后台:
@RequestMapping(value = "/uploadFile.do", method = RequestMethod.POST)
public String uploadFile(
@RequestParam("questionFile") MultipartFile uploadFile,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
String template = request.getParameter("template");
System.out.println(uploadFile.getName());
response.setCharacterEncoding("UTF-8");
response.setContentType("text/html; charset=utf-8");
OutputStreamWriter os = new OutputStreamWriter(
response.getOutputStream(), "UTF-8");
PrintWriter pw = new PrintWriter(os);
List<List<String>> qList = ExcelUtil.resolveExcelFileToList(uploadFile
.getInputStream());
try {
infoService.importInfoByFile(pw, qList,template);
} catch (Exception e) {
e.printStackTrace();
String info = "导入文件出错,请核实情况后重新导入";
pw.println("<script>window.parent.pa(\"" + info
+ "\")</script>");
pw.flush();
}
pw.close();
response.flushBuffer();
return null;
}
@Override
public void importInfoByFile(PrintWriter pw, List<List<String>> list,
String template) throws Exception {
if("bjxx".equals(template)){
for (List<String> colList : list) {
PriceInfoEO price = new PriceInfoEO();
price.setStockCode(colList.get(0));
price.setStockName(colList.get(1));
try{
price.setCreateDate(DateHelper.parse(colList.get(2), "yyyy-MM-dd"));
}catch (Exception e) {
String dateStr = colList.get(2);
String y = dateStr.substring(0, 4);
String m = dateStr.substring(4, 6);
String d = dateStr.substring(6, 8);
price.setCreateDate(DateHelper.parse(y + "-" + m + "-" + d,"yyyy-MM-dd"));
}
price.setCommissionType(colList.get(3));
price.setCommissionCount(colList.get(4));
price.setCommissionMoney(colList.get(5));
price.setTel(colList.get(6));
price.setStatus("1");
baseDao.saveOrUpdate(price);
}
String info = "导入完成";
pw.println("<script>window.parent.pa(\"" + info
+ "\")</script>");
pw.flush();
}
else if("dxzf".equals(template)){
for (List<String> colList : list) {
ComDxzfEO com = new ComDxzfEO();
com.setGqdm(colList.get(0));
com.setSj(colList.get(1));
com.setZfjg(colList.get(2));
com.setYjzfsl(colList.get(3));
com.setSjzfsl(colList.get(4));
com.setSjmjzj(colList.get(5));
baseDao.saveOrUpdate(com);
}
String info = "导入完成";
pw.println("<script>window.parent.pa(\"" + info
+ "\")</script>");
pw.flush();
}
else if("fhkg".equals(template)){
for (List<String> colList : list) {
ComFhkgEO com = new ComFhkgEO();
com.setGqdm(colList.get(0));
com.setGgrq(DateHelper.parse(colList.get(1), "yyyy-MM-dd"));
com.setFasm(colList.get(2));
com.setGqdjr(DateHelper.parse(colList.get(3), "yyyy-MM-dd"));
com.setGqcxr(DateHelper.parse(colList.get(4), "yyyy-MM-dd"));
com.setQydzr(DateHelper.parse(colList.get(5), "yyyy-MM-dd"));
baseDao.saveOrUpdate(com);
}
String info = "导入完成";
pw.println("<script>window.parent.pa(\"" + info
+ "\")</script>");
pw.flush();
}
else if("ggry".equals(template)){
for (List<String> colList : list) {
LeaderEO com = new LeaderEO();
com.setGfdm(colList.get(0));
com.setYears(colList.get(1));
com.setName(colList.get(2));
com.setPosition(colList.get(3));
com.setAge(colList.get(4));
com.setSex(colList.get(5));
com.setBeginDate(colList.get(6));
com.setQccgs(colList.get(7));
com.setQmcgs(colList.get(8));
com.setGfzjs(colList.get(9));
com.setSflx(colList.get(10));
com.setOrderNum(Integer.parseInt(colList.get(11)));
baseDao.saveOrUpdate(com);
}
String info = "导入完成";
pw.println("<script>window.parent.pa(\"" + info
+ "\")</script>");
pw.flush();
}
else if("cwzb".equals(template)){
for (List<String> colList : list) {
ComCwzbEO com = new ComCwzbEO();
com.setGqdm(colList.get(0));
com.setYears(colList.get(1));
com.setYysr(colList.get(2));
com.setYylr(colList.get(3));
com.setJlr(colList.get(4));
com.setWfplr(colList.get(5));
com.setZzc(colList.get(6));
com.setZfz(colList.get(7));
com.setJzc(colList.get(8));
com.setMgsy(colList.get(9));
com.setMgjzc(colList.get(10));
com.setJzcsyl(colList.get(11));
baseDao.saveOrUpdate(com);
}
String info = "导入完成";
pw.println("<script>window.parent.pa(\"" + info
+ "\")</script>");
pw.flush();
}
else if("zygd".equals(template)){
for (List<String> colList : list) {
ComGdEO com = new ComGdEO();
com.setGqdm(colList.get(0));
com.setNf(Integer.parseInt(colList.get(1)));
com.setJzrq(DateHelper.parse(colList.get(2), "yyyy-MM-dd"));
com.setGd(colList.get(3));
com.setCgzs(colList.get(4));
com.setWxsgf(colList.get(5));
com.setCgbl(colList.get(6));
com.setOrders(colList.get(7));
baseDao.saveOrUpdate(com);
}
String info = "导入完成";
pw.println("<script>window.parent.pa(\"" + info
+ "\")</script>");
pw.flush();
}
else if("qbhuiyuan".equals(template)){
List<ArticleEO> artList = new ArrayList<ArticleEO>();
for(List<String> colList : list){
String temp = "";
temp = temp + "<table height='165' width='453' border='1' bordercolor='#000000' cellpadding='2' cellspacing='0'><tbody>";
temp = temp + "<tr><td width='30%'>公司名称<br /></td><td>" + colList.get(1) + "</td></tr>";
temp = temp + "<tr><td>注册资本<br /></td><td>" + colList.get(2) + "</td></tr>";
temp = temp + "<tr><td>联系人<br /></td><td>" + colList.get(3) + "</td></tr>";
temp = temp + "<tr><td>电话<br /></td><td>" + colList.get(4) + "</td></tr>";
temp = temp + "<tr><td>地址<br /></td><td>" + colList.get(5) + "</td></tr>";
temp = temp + "<tr><td>邮编<br /></td><td>" + colList.get(6) + "</td></tr>";
temp = temp + "<tr><td>邮箱<br /></td><td>" + colList.get(7) + "</td></tr></tbody></table>";
ArticleEO art = new ArticleEO();
art.setTitle(colList.get(1));
art.setContent(temp);
art.setArticleType(Constant.ARTICLE_TYPE_SALE_SERVICE_USER_2);
art.setStatus(Constant.STATUS_1);
art.setUserType(Constant.USER_TYPE_3);
art.setPublishDate(DateHelper.parse(colList.get(0)));
art.setDisabledDate(DateHelper.parse("2099-12-31"));
art.setIsShowIndex("0");
art.setOrderNum(99);
artList.add(art);
}
baseDao.saveOrUpdateAll(artList);
String info = "导入完成";
pw.println("<script>window.parent.pa(\"" + info
+ "\")</script>");
pw.flush();
}
}
前端:
<div id="upload_down" class="easyui-window" title="会员数据导入" style="width:408px;height:250px;"
data-options="modal:true,collapsible:false,minimizable:false,closed:true,selectOnCheck:false">
<form name="uploadForm" method="post" id="upload" target="frameFile" action="<%=basePath %>uploadFile.do?template=qbhuiyuan" enctype="multipart/form-data">
<fieldset style="width:350px;float:left;margin:10px;padding:10px;">
<legend>导入与模板下载:</legend>
<div style="margin:15px;">
<div style="width:90%;text-align:center;margin-left:0px;">
<input id="questionFile" type="file" style="width:250px;height:25px;display:block;" name="questionFile" />
</div>
<div style="float:left;display:block;width:90%;text-align:left;margin:5px 0px 0px 0px;">
<span id="upload_process" style="float:left;margin:5px 0px 5px 10px;color:#0A8CD2;font-size:12px;color:#343434;"></span>
</div>
<div style="float:left;width:90%;text-align:center;margin-top:5px;">
<input type="button" onClick="downLoad();" value="下载模板" id="Button1" class="oa_btn" />
<input type="button" onClick="upload();" value="导入" id="Button1" class="oa_btn" />
</div>
</div>
</fieldset>
</form>
</div>
- excel上传和下载
需要注意的地方: 1.js构造表单并提交 2.js中文传参encodeURI(encodeURI("中文")),action接收并转换value = URLDecoder.deco ...
- java对excel表格的上传和下载处理
Excel表格文件的上传和下载,java中涉及到文件肯定会有io流的知识. 而excel文件就要涉及到poi技术,而excel的版本包括:2003-2007和2010两个版本, 即excel的后缀名为 ...
- vue实现Excel文件的上传与下载
一.前言项目中使用到比较多的关于Excel的前端上传与下载,整理出来,以便后续使用或分析他人. 1.前端vue:模板下载与导入Excel 导入Excel封装了子组件,点击导入按钮可调用子组件,打开文件 ...
- 2019.06.05 ABAP EXCEL 操作类代码 OLE方式(模板下载,excel上传,内表下载)
一般使用标准的excel导入方法9999行,修改了标准的excel导入FM 整合出类:excel的 模板下载,excel上传,ALV内表下载功能. 在项目一开始可以SE24创建一个类来供整体开发使用, ...
- 微信小程序云开发-云存储-上传、下载、打开文件文件(word/excel/ppt/pdf)一步到位
一.wxml文件 <!-- 上传.下载.打开文件一步执行 --> <view class="handle"> <button bindtap=&quo ...
- Struts2 之 实现文件上传和下载
Struts2 之 实现文件上传和下载 必须要引入的jar commons-fileupload-1.3.1.jar commons-io-2.2.jar 01.文件上传需要分别在struts.xm ...
- PHPexcel:多sheet上传和下载
excel表格上传和下载,断断续续写了很久,赶紧记下来万一以后忘记就亏大了= = 数据库有三张表:
- EXCEL上传POI
Java SpringMVC POI上传excel并读取文件内容 2017年11月27日 15:26:56 强人锁男. 阅读数:15329 用的SSM框架,所需要的jar包如图所示:,链接地址:j ...
- 七牛云存储 qiniu 域名 回收 文件上传 备份 下载 MD
Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...
随机推荐
- PS-添加前景色
alt+Delete是填充前景色,即ps左边两个颜色块,前面的那个 ctrl+delete填充背景色
- POJ 2376 Cleaning Shifts 贪心
Cleaning Shifts 题目连接: http://poj.org/problem?id=2376 Description Farmer John is assigning some of hi ...
- cdoj 03 BiliBili, ACFun… And More! 水题
Article Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://acm.uestc.edu.cn/#/problem/show/3 Descr ...
- oc-20-多态
/** 为什么父类可以访问子类继承自父类的方法,但是无法访问子类独有的方法? 1.编译器编译时: 编译器在编译时,只检查指针变量的类型,确定该指针变量类型里面有下面调用的方法,如果有该方法,编译器就认 ...
- iOS “请在微信客户端打开链接” UIWebview加载H5页面携带session、cookie、User-Agent信息 设置cookie、清除cookie、设置User-Agent
公司新开的一个项目..内容基本上是加载H5页面显示..当时觉得挺简单的..后来发现自己掉坑里了..一些心理历程就不说了..说这个项目主要用到的知识点吧..也是自己踩得坑. 首先说说..这个项目上的内容 ...
- SQL Server 表和索引存储结构
在上一篇文章中,我们介绍了SQL Server数据文件的页面类型,系统通过96个字节的头部信息和系统表从逻辑层面上将表的存储结构管理起来,具体到表的存储结构上,SQL Server引入对象.分区.堆或 ...
- 1.7.6 Highlighting-高亮
1 高亮 solr的高亮允许匹配用户查询的文档的片段包含在查询响应中返回,高亮包含在返回结果的单独部分(highlighting部分). solr提供了一个高亮工具的集合,这个工具允许控制大量字段的片 ...
- solr 竞价排行
在理想的情况下,搜索引擎只返回与用户查询相关的文档.而在现实的查询中,编辑(没发现更合适的表达)通常需要指定特定文档在搜索结果中的特定位置.这样做有很多原因.或许 “置顶” 的文档就是最好的查询结果. ...
- 关于 2dx v3.7 UIScale9Sprite的bug
关于 2dx v3.7 UIScale9Sprite的bug 刚把引擎从js binding v3.0升级到v3.7,发现了一些bug,这里先说说关于scale9sprite的 1. 关于capIns ...
- [Java,JavaEE] 最常用的Java库一览
引用自:http://www.importnew.com/7530.html 本文由 ImportNew - 邢 敏 翻译自 programcreek.欢迎加入Java小组.转载请参见文章末尾的要求. ...