REST中上传文件简单的实现笔记
来源:互联网 发布:淘宝装修图片 编辑:程序博客网 时间:2024/05/02 01:08
package boa.framework.updown;import java.io.File;import java.nio.file.Paths;import java.util.List;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import javax.ws.rs.Consumes;import javax.ws.rs.POST;import javax.ws.rs.Path;import javax.ws.rs.core.Context;import javax.ws.rs.core.Response;import org.apache.commons.fileupload.FileItem;import org.apache.commons.fileupload.disk.DiskFileItemFactory;import org.apache.commons.fileupload.servlet.ServletFileUpload;/** * * REST,非spring版本。 * @author zhangdapeng * @version 1.0,2014-1-03 13:05:06 * @since 1.0 */@Path("/file")public class Upload {@ContextHttpServletRequest request;@ContextHttpServletResponse response;@POST@Path("/upload")@Consumes("multipart/form-data")public Response upLoad() throws Exception {String upload_file_path=request.getSession().getServletContext().getRealPath("/")+"upload/" ;System.out.println(upload_file_path);// 设置工厂DiskFileItemFactory factory = new DiskFileItemFactory();// 设置文件存储位置factory.setRepository(Paths.get(upload_file_path).toFile());// 设置大小,如果文件小于设置大小的话,放入内存中,如果大于的话则放入磁盘中,单位是bytefactory.setSizeThreshold(1024 * 1024);ServletFileUpload upload = new ServletFileUpload(factory);// 这里就是中文文件名处理的代码,其实只有一行upload.setHeaderEncoding("utf-8");String fileName = null;List<FileItem> list = upload.parseRequest(request);for (FileItem item : list) {if (item.isFormField()) {String name = item.getFieldName();String value = item.getString("utf-8");System.out.println(name);System.out.println(value);request.setAttribute(name, value);} else {String name = item.getFieldName();String value = item.getName();System.out.println(name);System.out.println(value);fileName = Paths.get(value).getFileName().toString();request.setAttribute(name, fileName);if(!Paths.get(upload_file_path).toFile().exists()){Paths.get(upload_file_path).toFile().mkdirs();}// 写文件到path目录,文件名问filenameitem.write(new File(upload_file_path, fileName));}}return Response.status(200).entity("uploadFile is called, Uploaded file name : " + fileName).build();}}
0 0
- REST中上传文件简单的实现笔记
- Java web 中实现简单的文件上传与下载——学习笔记
- ASP.NET 2.0中上传文件的简单实现
- VS2010中使用NeatUpload实现简单的文件上传功能
- ASP.NET中实现简单文件上传
- 文件上传简单实现
- 简单的Sturts上传文件实现
- 实现简单的struts,hibernate上传文件
- JSP实现简单的文件上传
- PHP实现简单的文件上传
- 简单实现一个文件上传的进度条
- Android实现简单的文件上传
- Django 实现简单的文件上传
- Golang 实现简单的文件上传
- Struts2实现简单的文件上传
- 简单的文件上传(javaweb实现)
- struts2简单的文件上传实现
- laravel框架-实现简单的文件上传
- Jenkins 配置&集成StyleCop
- 开始使用NDK
- 自己写的两个方法,关于bean和map的转化,比网上的效率快很多
- python-nmap在SLES11上似乎有点小问题
- Uploadify的一些参数
- REST中上传文件简单的实现笔记
- 为何安卓程序用Java开发
- Openstack Keystone 认证流程(四)--Filter流水线
- 辣妈萌宝APP--打开辣妈萌宝进行记录
- Java垃圾回收机制
- is not in the sudoers file 解决方案
- mapreduce编程:单表自连接
- Oracle的edit命令
- Java算法题目:一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。