拒绝访问。
来源: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
同学你好!看报错信息是同学的文件夹禁止访问,同学需要解决一下不能访问的问题,为了节约同学的时间建议同学可以换一个目录进行测试

如果我的回答解决了你的疑惑,请采纳,祝学习愉快~
相似问题