拒绝访问。
来源:2-4 导入Excel-2
中野二乃
2019-05-13 09:53:55
package servlet; import dto.parmedto; 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; import util.requestUtil; import javax.servlet.ServletException; import javax.servlet.ServletRequestListener; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.File; import java.io.IOException; import java.util.List; import java.util.ListIterator; import static util.requestUtil.parseParam; public class ExcelServlet extends HttpServlet { protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //判断上传的是否为文件 if(ServletFileUpload.isMultipartContent(request)){//固定写法 //如果是则调用工具类实现方法 parmedto dto=requestUtil.parseParam(request); }else{ //不是文件 } } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doPost(request, response); } }
package service; import org.apache.poi.openxml4j.exceptions.InvalidFormatException; import org.apache.poi.ss.usermodel.Row; import org.apache.poi.ss.usermodel.Sheet; import org.apache.poi.ss.usermodel.Workbook; import org.apache.poi.ss.usermodel.WorkbookFactory; import java.io.File; import java.io.IOException; //解析Excel的内容 public class Excelservice { public void imp(){ //导入poi等包 try { Workbook workbook; workbook = WorkbookFactory.create(new File("E:/uplord/import_03_excel.xls")); //从0(1)开始取sheet Sheet sheet=workbook.getSheetAt(0); //取到sheet中的有效行数量 int rowNum=sheet.getLastRowNum(); //遍历sheet for(int i=1;i<rowNum+1;i++){ //获得每一行 Row row=sheet.getRow(i); //获得每列 row.getCell(0); //输出内容 System.out.println("name:"+row.getCell(0).getStringCellValue()+ "age:"+row.getCell(1).getNumericCellValue()+"time:"+row.getCell(2).getDateCellValue()); } } catch (IOException e) { e.printStackTrace(); } catch (InvalidFormatException e) { e.printStackTrace(); } } }
package dto; import org.apache.commons.fileupload.FileItem; import java.util.HashMap; import java.util.Map; //接收参数map public class parmedto { private Map<String,String> paramap;//参数map private Map<String, FileItem> filemap;//文件map public parmedto() { //无参方法中对象实例化 paramap=new HashMap<String,String>(); filemap=new HashMap<String,FileItem>(); } //返回对象到requestUtil public parmedto(Map<String, String> paramap, Map<String, FileItem> filemap) { this.paramap = paramap; this.filemap = filemap; } public Map<String, String> getParamap() { return paramap; } public void setParamap(Map<String, String> paramap) { this.paramap = paramap; } public Map<String, FileItem> getFilemap() { return filemap; } public void setFilemap(Map<String, FileItem> filemap) { this.filemap = filemap; } }
til; import dto.parmedto; import org.apache.commons.fileupload.FileItem; import org.apache.commons.fileupload.disk.DiskFileItemFactory; import org.apache.commons.fileupload.servlet.ServletFileUpload; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.File; import java.util.List; //解析工具类 //将标题与文件添加进两组map--parmedto public class requestUtil { public static parmedto parseParam(HttpServletRequest request){ parmedto result=new parmedto(); //是文件 //创建ServletFileUpload对象,参数为新建文件工厂对象 ServletFileUpload upload=new ServletFileUpload(new DiskFileItemFactory()); //设置文件编码 upload.setHeaderEncoding("UTF-8"); //解析上传的文件,返回一个list<FileItem>集合(标题和上传的文件均被解析进集合) try { List<FileItem> list=upload.parseRequest(request); //for循环遍历集合,判断上传为文件还是标题 for (FileItem fileItem:list) { if(fileItem.isFormField()){ //封装进map result.getParamap().put(fileItem.getFieldName(),fileItem.getString("UTF-8")); //如果是标题:打印 System.out.println(fileItem.getFieldName()+" "+fileItem.getString("UTF-8")); }else{ //封装进map result.getFilemap().put(fileItem.getFieldName(),fileItem); //如果是文件上传到指定目录 fileItem.write(new File("E:/uplord/" + fileItem.getName())); } } } catch (Exception e) { e.printStackTrace(); } return result; } }
能上传不能解析
1回答
好帮手慕柯南
2019-05-13
同学你好!看报错信息是同学的文件夹禁止访问,同学需要解决一下不能访问的问题,为了节约同学的时间建议同学可以换一个目录进行测试
如果我的回答解决了你的疑惑,请采纳,祝学习愉快~
相似问题