@MultipartConfig,Servlet3.0通过Part进行文件上传
来源:互联网 发布:我的世界编程猫 编辑:程序博客网 时间:2024/05/17 22:24
@MultipartConfig使用注解@MultipartConfig 将一个 Servlet 标识为支持文件上传。Servlet3.0 将multipart/form-data 的 POST 请求封装成 Part,通过 Part 对文件进行上传。Servlet3 没有提供直接获取文件名的方法,需要从请求头中解析出来
upload.html
<form action="upload" method="post" enctype="multipart/form-data"><input type="file" name="f"><br/><input type="submit" name="submit"></form>
UploadServlet//request.getpart()单文件上传
@WebServlet("/upload")@MultipartConfigpublic class UploadServlet extends HttpServlet { private static final long serialVersionUID = 1L; public UploadServlet() {} protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("UTF-8"); response.setContentType("text/html;charset=UTF-8"); // 获取请求项, 封装成Part对象 Part part = request.getPart("f"); String fileName = part.getSubmittedFileName(); System.out.println(fileName); String direc = this.getServletContext().getRealPath("/upload/"); File dirf = new File(direc); if(!dirf.exists()){ dirf.mkdirs(); } part.write(direc+fileName); } protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); }}
使用request.getParts() 多文件上传
request.setCharacterEncoding("UTF-8"); response.setContentType("text/html;charset=UTF-8"); Collection<Part> parts = request.getParts(); for(Part part:parts){ String fileName = part.getSubmittedFileName(); System.out.println(fileName); if(null!=fileName&&!(fileName).trim().equals("")){ String direc = this.getServletContext().getRealPath("/upload/"); File dirf = new File(direc); if(!dirf.exists()){ dirf.mkdirs(); } part.write(direc+fileName); } }
–
可能遇到的问题:
使用Servlet3.0上传图片,无法使用part.getSubmittedFileName()方法解决
阅读全文
0 0
- @MultipartConfig,Servlet3.0通过Part进行文件上传
- Servlet-文件上传@MultipartConfig,Part
- servlet3.0 part上传文件
- Servlet3.1下@MultipartConfig注解方式上传文件
- Servlet3的上传配置@MultipartConfig
- 原生servlet3.0中进行文件上传
- servlet3.0上传文件
- servlet3.0文件上传
- Servlet3.0文件上传
- servlet3.0 文件上传
- Web项目通过Servlet3.0完成文件上传
- Servlet3.0的文件上传
- Servlet3.0现实文件上传
- servlet3.0多文件上传
- Servlet3.0 上传文件实例
- 【Demo】Servlet3.0 上传文件
- servlet3.0处理文件上传
- 使用Servlet3.0上传文件
- 使用七牛图床
- 项目第二天
- int main() 和 int main( int argc, char * argv[])的区别
- 二叉树基本操作及其他2
- 杭电acm—1257 最少拦截系统
- @MultipartConfig,Servlet3.0通过Part进行文件上传
- PHP PDOStatement:bindParam 插入数据错误问题分析
- js浮动侧边拦
- 数据结构链式队列
- POJ 2796 Feel Good 单调栈或者笛卡尔树
- jQuery NaN isNan() 数字值
- cef下加载flash
- 每日MySQL之010:导出Delimited-Text格式文件
- 7月份月报总结