servlet 3.0针对文件上传做了一些优化,提供了一些更加人性化的API可以直接在request中的到文件的名称、文件size,MIME类型,以及用InputStream表示的文件流的信息

  @RequestMapping(value = "/add", method = RequestMethod.POST)
  @ResponseBody
public String addFile(HttpServletRequest request) throws IOException, ServletException {
request.setCharacterEncoding("UTF-8");
Part filePart = request.getPart("file");
String fileName = filePart.getSubmittedFileName();//文件名
long size = filePart.getSize();//文件大小
String contentType = filePart.getContentType();//文件的MIME类型
byte[] data = new byte[(int) size];
filePart.getInputStream().read(data);//以InputStream表示的文件流信息
String fileUUID = this.fileService.addFile(fileName, contentType, size, data);
return fileUUID;
}

最新文章

  1. 我的基于asp.net mvc5 +mysql+dapper+easyui 的Web开发框架(0)
  2. 用kryonet时kryo报buffer underflow错误
  3. ASP.NET Core 使用 AutoFac 注入 DbContext
  4. 说完Pivot 今天说下Unpivot 的处理方式
  5. JavaScript 为什么要通过原型 prototype 调用函数, 而不是直接调用?
  6. shell之eval-command
  7. linux设置环境变量的方法
  8. Android小项目之三 splash界面
  9. UESTC_酱神赏花 2015 UESTC Training for Dynamic Programming<Problem C>
  10. HDU 1787 GCD Again
  11. 笔记7 AOP
  12. 解决:MySQL 报错:1045 - Access denied for user 'root'@'localhost'(using password YES)
  13. SpringBoot入门教程(十五)集成Druid
  14. 关于sniff函数的一个小坑
  15. windows共享文件夹至centos系统文件夹下
  16. js中各种弹窗
  17. SublimeText3追踪函数工具CTags设置及使用
  18. Object.defineProperty之observe实现
  19. Oracle_忘记密码
  20. 第17月第28天 python yield

热门文章

  1. [转]ViewPager学习笔记(一)——懒加载
  2. 微信小程序----map组件实现检索【定位位置】周边的POI
  3. 有趣的 Mysql 存储引擎
  4. jquery 新建的元素事件绑定问题研究[转]
  5. Hbase rowkey设计一
  6. CString常用函数
  7. 如果不得已需要全局变量,则使全局变量加前缀 g_(表示 global)
  8. (转)Invalidate、RedrawWindow与UpdateWindow的区别
  9. 【Java面试题】7 构造器Constructor是否可被override?
  10. OpenGL模板缓冲区与模板测试