package cn.cupcat.controller;
import java.io.File;
import java.io.IOException;
import java.sql.Timestamp;
import java.text.SimpleDateFormat;
import java.util.Iterator;
import java.util.List;
import java.util.UUID;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
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 cn.cupcat.util.UploadUtil;
public class UploadController extends HttpServlet {
/**
*
*/
private static final long serialVersionUID = 1L;
public static String uploadPath = "D:\\upload";
File repository;
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
System.out.println("我进入了post方法!");
//返回客户端消息
String resultMessage = "";
DiskFileItemFactory fileFactory = new DiskFileItemFactory();
//设置缓冲区大小 这里是4KB (单位是B 字节)
fileFactory.setSizeThreshold(4096);
//设置缓存
fileFactory.setRepository(repository);
ServletFileUpload servletFileUpload = new ServletFileUpload(fileFactory);
//设置文件上传的大小这里是4M
servletFileUpload.setFileSizeMax(4194304);
try {
//得到上传文件列表
List<FileItem> fileItem = servletFileUpload.parseRequest(request);
Iterator<FileItem> iterator = fileItem.iterator();
//得到保存路径
File saveDir = UploadUtil.getSavePath(request);
while(iterator.hasNext()){
FileItem file = iterator.next();
if(file != null){
String fileName = file.getName();
if(fileName != null){
//System.out.println("上传文件的没有转码的文件名为:"+fileName);
//构建本地文件
File saveFile = new File(saveDir,UploadUtil.getSaveFileName(fileName));
file.write(saveFile);
resultMessage = UploadUtil.getResponseResult(200, "上传成功!");
}else{
System.out.println("上传失败!");
resultMessage = UploadUtil.getResponseResult(300, "请选择上传文件,上传失败!");
}
}
}
System.out.println("文件上传结束 !");
} catch (FileUploadException e) {
resultMessage = UploadUtil.getResponseResult(300, "文件上传错误,上传失败!");
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
resultMessage = UploadUtil.getResponseResult(300, "文件上传错误,上传失败!");
}
response.getWriter().print(resultMessage);//返回客户端 resultMessage
}
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
this.doPost(req, resp);
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
javaee上传文件实例
共24个文件
class:4个
java:4个
prefs:3个
3星 · 超过75%的资源 需积分: 10 36 下载量 160 浏览量
2017-05-29
20:48:38
上传
评论 1
收藏 261KB 7Z 举报
温馨提示
这是javaee上传文件的一个案例,大家可以参考一下。如果有什么问题,大家一起讨论!
资源推荐
资源详情
资源评论
收起资源包目录
upload_demo.7z (24个子文件)
upload_demo
.settings
org.eclipse.wst.jsdt.ui.superType.name 6B
com.genuitec.eclipse.core.prefs 106B
org.eclipse.wst.common.project.facet.core.xml 414B
org.eclipse.core.resources.prefs 57B
org.eclipse.wst.common.component 492B
org.eclipse.wst.jsdt.ui.superType.container 49B
.jsdtscope 522B
org.eclipse.jdt.core.prefs 364B
src
cn
cupcat
filter
UnicodeFilter.java 1KB
test
Test.java 547B
controller
UploadController.java 3KB
util
UploadUtil.java 2KB
.project 1KB
WebRoot
META-INF
MANIFEST.MF 39B
WEB-INF
attachment
web.xml 1KB
classes
cn
cupcat
filter
UnicodeFilter.class 2KB
test
Test.class 1KB
controller
UploadController.class 4KB
util
UploadUtil.class 3KB
lib
commons-io-2.0.1.jar 156KB
commons-fileupload-1.2.2.jar 58KB
static
js
jquery-3.2.1.js 262KB
index.jsp 2KB
.classpath 1KB
共 24 条
- 1
资源评论
- kaer666yeah2018-09-28还行,还不错
xinghuo0007
- 粉丝: 296
- 资源: 11
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功