对上传文件做哪些校验?
- 校验文件大小
- 校验文件后缀名
- 校验文件内容
- 以图片为例,校验文件的宽和高(通过jdk自带的image对象获取)
在Springmvc中如何实现文件上传?
- 加入commons-fileupload依赖
- 配置文件上传解析器
- 编写controller实现文件上传的逻辑(将临时文件写入)
图片上传的问题
之前做法:将图片上传到tomcat中,然后通过tomcat访问
存在问题:
- 移植性不好
- 服务器性能问题
静态图片不应该使用应用服务器,而应该使用web服务器
- web服务器:apache、nginx
- 应用服务器:tomcat、jetty、resin等
通过nginx访问服务器中的图片:
好处:
- 减少tomcat的压力
- 解决多个tomcat的文件上传问题,方便做tomcat集群
- nginx的并发能力远高于tomcat