上传excel文件 并获取其信息(使用file上传组件)

先搭建个小环境

web.xml

<?xml version="1.0" encoding="UTF-8"?><web-app version="3.0" xmlns=""xmlns:xsi=""xsi:schemaLocation=" "><display-name>upload</display-name><context-param><param-name>uploadRootKey</param-name><param-value>unicomEOMS.root</param-value> </context-param><servlet><servlet-name>upload</servlet-name><servlet-class>com.test.Upload</servlet-class></servlet><servlet-mapping><servlet-name>upload</servlet-name><url-pattern>/upload/upload</url-pattern></servlet-mapping><servlet><servlet-name>ReadExcelDemo</servlet-name><servlet-class>com.test.ReadExcelDemo</servlet-class></servlet><servlet-mapping><servlet-name>ReadExcelDemo</servlet-name><url-pattern>/ReadExcelDemo/ReadExcelDemo</url-pattern></servlet-mapping><welcome-file-list><welcome-file>index.jsp</welcome-file></welcome-file-list></web-app>

java代码

package com.test;import java.io.IOException;import java.io.InputStream;import java.util.List;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import jxl.Cell;import jxl.Sheet;import jxl.Workbook;import jxl.read.biff.BiffException;import org.apache.commons.fileupload.FileItem;import org.apache.commons.fileupload.FileUploadException;import org.apache.commons.fileupload.disk.DiskFileItemFactory;import org.apache.commons.fileupload.servlet.ServletFileUpload;public class Upload extends HttpServlet {private static final long serialVersionUID = 6777945010008132796L;//@Override//protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {//super.doGet(req, resp);//System.out.println("doGet");//resp.sendRedirect("/upload/index.jsp");//}//@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {System.out.println("———– upload ———–");InputStream is = null;Workbook workbook = null;try {List<FileItem> items = new ServletFileUpload(new DiskFileItemFactory()).parseRequest(req);System.out.println("items size is :"+items.size());for (FileItem item : items) {if (item.isFormField()) {System.out.println(item.getFieldName());System.out.println(item.getString());} else {System.out.println(item.getFieldName());is = item.getInputStream();workbook = Workbook.getWorkbook(is);}}} catch (FileUploadException e) {e.printStackTrace();} catch (BiffException e) {e.printStackTrace();}Sheet[] sheetNum = workbook.getSheets();System.out.println("打印sheet的個數:"+sheetNum.length);Sheet sheet = workbook.getSheet(0);Cell cell = null;int columnCount = sheet.getColumns();int rowCount = sheet.getRows();for (int i = 0; i < rowCount; i++) {for (int j = 0; j < columnCount; j++) {cell = sheet.getCell(j, i);System.out.print(cell.getContents());}System.out.println(" \n");}resp.sendRedirect("/importexcel/index.jsp");workbook.close();}}jsp代码

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%><%String path = request.getContextPath();String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort()+ path + "/";%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><base href="<%=basePath%>"><title>My JSP ‘index.jsp’ starting page</title><meta http-equiv="pragma" content="no-cache"><meta http-equiv="cache-control" content="no-cache"><meta http-equiv="expires" content="0"><meta http-equiv="keywords" content="keyword1,keyword2,keyword3"><meta http-equiv="description" content="This is my page"></head><body><form action="upload/upload" enctype="multipart/form-data" method="post"><input type="file" name="myfile" /><input type="submit" /></form></body></html>貌似就这么简单,,

偶整了很久,他丫的不知道为什么前台的request接受不到。

带着感恩的心启程,学会爱,爱父母,爱自己,爱朋友,爱他人。

上传excel文件 并获取其信息(使用file上传组件)

相关文章:

你感兴趣的文章:

标签云: