您的位置:首页 > 编程语言 > Java开发

SpringMVC 4:文件上传和校验

2015-10-26 00:00 447 查看
文件上传,配置文件上传解析器
Xml代码
<!-- 文件上传解析器  上传最大尺寸:10M(10485760)、id名称必须为:multipartResolver -->
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<property name="maxUploadSize" value="10485760"/>
</bean>
<!-- 文件上传解析器  上传最大尺寸:10M(10485760)、id名称必须为:multipartResolver -->
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<property name="maxUploadSize" value="10485760"/>
</bean>
配置静态资源
Xml代码
<mvc:resources location="/upload/" mapping="/upload/**"/>
<mvc:resources location="/upload/" mapping="/upload/**"/>
controller
Java代码
public String saveOrUpdate( Person p, BindingResult br, MultipartFile photo, HttpServletRequest request) throws IOException {
if (!photo.isEmpty()) {
ServletContext sc = request.getSession().getServletContext();
String dir = sc.getRealPath("/upload/"); // 得到服务器真实路径
String filename = photo.getOriginalFilename(); // 得到上传时的文件名
String _extName = filename.substring(filename.indexOf(".")); // 扩展名

// filename = UUID.randomUUID().toString() + _extName; //图片名称定义为UUID,防止并发文件被覆盖的情况
// filename = System.nanoTime() + _extName; //nanoTime数值
filename = System.currentTimeMillis() + _extName; // currentTimeMillis数值

FileUtils.writeByteArrayToFile(new File(dir + "/" + filename), photo.getBytes()); // 写文件到服务器上

p.setPhotoPath("/upload/" + filename); // 设置图片路径
}

personService.saveOrUpdate(p);

return "redirect:/person/listAll.action"; // 重定向
}
public String saveOrUpdate( Person p, BindingResult br, MultipartFile photo, HttpServletRequest request) throws IOException {
if (!photo.isEmpty()) {
ServletContext sc = request.getSession().getServletContext();
String dir = sc.getRealPath("/upload/"); // 得到服务器真实路径
String filename = photo.getOriginalFilename(); // 得到上传时的文件名
String _extName = filename.substring(filename.indexOf(".")); // 扩展名

// filename = UUID.randomUUID().toString() + _extName; //图片名称定义为UUID,防止并发文件被覆盖的情况
// filename = System.nanoTime(
3ff0
) + _extName; //nanoTime数值
filename = System.currentTimeMillis() + _extName; // currentTimeMillis数值

FileUtils.writeByteArrayToFile(new File(dir + "/" + filename), photo.getBytes()); // 写文件到服务器上

p.setPhotoPath("/upload/" + filename); // 设置图片路径
}

personService.saveOrUpdate(p);

return "redirect:/person/listAll.action"; // 重定向
}

校验,我在研究一下

[b][b]获取【下载地址】[/b][/b] 【新技术】现在最流行的java后台框架组合java springmvc mybaits mysql oracle html5 后台框架源码
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  SpringMVC 4