Excel上传并解析(java)
2017-07-17 09:14
295 查看
问题:本地测试时,通过本地地址上传文件是可行的,但是当把项目部署到服务器上时,通过这种方式上传本地文件是不行的。
解决:需要先把文件上传到服务器,然后再做其他操作(提取数据,数据转换,存档等)
前端代码(表单上传文件,后面会研究ajax上传文件)
后端代码(excel文件解析):
其他代码:
注:upload_excel 与前端input的name一致
如有错误,还请多指教。
解决:需要先把文件上传到服务器,然后再做其他操作(提取数据,数据转换,存档等)
前端代码(表单上传文件,后面会研究ajax上传文件)
<s:form action="member_extractMembers" method="post" enctype="multipart/form-data"> <span>选择Excel文件</span> <s:file name="upload_excel" accept="application/vnd.ms-excel,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"></s:file> <br> <s:submit value="导入"></s:submit> </s:form>
后端代码(excel文件解析):
/** * 提取Excel中的内容 * */ public static List<Member> extract(File file_name){ //List<Member> members = new ArrayList<>(); List<Member> members = new ArrayList<>(); try { InputStream is = new FileInputStream(file_name); XSSFWorkbook xssfWorkbook = new XSSFWorkbook(is); //只读取第一个sheet进行处理 XSSFSheet sheet = xssfWorkbook.getSheetAt(0); //处理当前sheet,循环读取每一行 for(int row_num = 1; row_num < (sheet.getLastRowNum()+1);row_num++){ //System.out.println(sheet.getLastRowNum()); XSSFRow xss_row = sheet.getRow(row_num); Member member = new Member(); member.setName(getStringVal(xss_row.getCell(0))); member.setPhone(getStringVal(xss_row.getCell(1))); member.setCard_name(getStringVal(xss_row.getCell(2))); member.setLoose_change(getStringVal(xss_row.getCell(3))); members.add(member); } //} } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } return members; }
其他代码:
/** * 提取文件中的会员 * */ public String extractMembers(){ List<Member> members = MemberUtil.extract(upload_excel); request.setAttribute("add_members", members); request.setAttribute("title", "批量添加会员"); request.setAttribute("navPath", "foreground/nav2/nav.jsp"); request.setAttribute("contempPath", "foreground/shop/member/addMany.jsp"); return SUCCESS; }
注:upload_excel 与前端input的name一致
如有错误,还请多指教。
相关文章推荐
- Java上传下载excel、解析Excel、生成Excel的问题
- Java对Excel(03,07)进行上传、解析、验证、入库
- java/excel上传,解析,导入数据库
- Java学习之道:Java上传下载excel、解析Excel、生成Excel的问题
- Java上传下载excel、解析Excel、生成Excel的问题
- java实现excel文件上传并解析内容保存到数据库中
- java上传excel文件及解析
- JAVA JXL -----excel文件上传和解析
- java web:excel文件上传与解析
- java实现excel文件上传,解析,导入
- Java上传下载excel、解析Excel、生成Excel的问题
- Java上传下载excel、解析Excel、生成Excel的问题
- Java上传下载excel、解析Excel、生成Excel
- Java上传下载excel、解析Excel、生成Excel的问题
- Java对Excel(03,07)进行上传、解析、验证、入库
- Excel上传并解析java对象(项目可下载)
- Java上传下载excel、解析Excel、生成Excel的问题
- Java上传下载excel、解析Excel、生成Excel的问题
- Java上传Excel并解析
- Java上传下载excel、解析Excel、生成Excel的问题