Spring上传文件学习笔记
2015-07-02 15:02
441 查看
//采用这种方法,spring配置文件中必须加上这句<property name="resolveLazily" value="true"/>
MultipartResolver resolver = new CommonsMultipartResolver(request.getSession().getServletContext());
使用springMVC对文件上传的解析器来处理文件上传的时候需要在spring的applicationContext里面加上springMVC提供的MultipartResolver的申明这样客户端请求的时候
springMVC会检查request里面是否包含多媒体信息 如果包含了就会使用MultipartResolver进行解析,springMVC会使用一个支持文件 处理的MultipartHttpServletRequest来包裹当前的HttpServletRequest然后使用MultipartHttpServletRequest就可以对文件进行处理了。
一、配置文件:
SpringMVC 用的是 的MultipartFile来进行文件上传 所以我们首先要配置MultipartResolver:用于处理表单中的file
二、创建一个简单的上传表单:
<form action="myAuthIncome/authImageUpload" method="post" enctype="multipart/form-data">
选择文件:<input type="file" name="file">
<input type="submit" value="提交">
</form>
注意要在form标签中加上enctype="multipart/form-data"表示该表单是要处理文件的,这是最基本的东西
三、编写上传控制类
MultipartResolver resolver = new CommonsMultipartResolver(request.getSession().getServletContext());
if (resolver.isMultipart(request)) {
StringBuffer sb = new StringBuffer();
String randomName = StringUtil.getRandomFileName();
logger.info("随机生成新的文件名 : "+randomName);
String uploadFileName = incomeCer.getOriginalFilename();
String newFileName = "";
if(StringUtils.isNotBlank(uploadFileName)){
String suffix = uploadFileName.substring(uploadFileName.indexOf("."));
newFileName = randomName+suffix;
String savePath = basePath+"/"+newFileName;
File saveFile = new File(savePath);
File parentFile = saveFile.getParentFile();
if(saveFile.exists()) {
saveFile.delete();
}else {
if (!parentFile.exists()) {
parentFile.mkdirs();
}
}
FileUtils.copyInputStreamToFile(incomeCer.getInputStream(), saveFile);
}
MultipartResolver resolver = new CommonsMultipartResolver(request.getSession().getServletContext());
使用springMVC对文件上传的解析器来处理文件上传的时候需要在spring的applicationContext里面加上springMVC提供的MultipartResolver的申明这样客户端请求的时候
springMVC会检查request里面是否包含多媒体信息 如果包含了就会使用MultipartResolver进行解析,springMVC会使用一个支持文件 处理的MultipartHttpServletRequest来包裹当前的HttpServletRequest然后使用MultipartHttpServletRequest就可以对文件进行处理了。
一、配置文件:
SpringMVC 用的是 的MultipartFile来进行文件上传 所以我们首先要配置MultipartResolver:用于处理表单中的file
二、创建一个简单的上传表单:
<form action="myAuthIncome/authImageUpload" method="post" enctype="multipart/form-data">
选择文件:<input type="file" name="file">
<input type="submit" value="提交">
</form>
注意要在form标签中加上enctype="multipart/form-data"表示该表单是要处理文件的,这是最基本的东西
三、编写上传控制类
MultipartResolver resolver = new CommonsMultipartResolver(request.getSession().getServletContext());
if (resolver.isMultipart(request)) {
StringBuffer sb = new StringBuffer();
String randomName = StringUtil.getRandomFileName();
logger.info("随机生成新的文件名 : "+randomName);
String uploadFileName = incomeCer.getOriginalFilename();
String newFileName = "";
if(StringUtils.isNotBlank(uploadFileName)){
String suffix = uploadFileName.substring(uploadFileName.indexOf("."));
newFileName = randomName+suffix;
String savePath = basePath+"/"+newFileName;
File saveFile = new File(savePath);
File parentFile = saveFile.getParentFile();
if(saveFile.exists()) {
saveFile.delete();
}else {
if (!parentFile.exists()) {
parentFile.mkdirs();
}
}
FileUtils.copyInputStreamToFile(incomeCer.getInputStream(), saveFile);
}
相关文章推荐
- OSGI的含义
- ActiveMQ、Spring整合学习
- 解决 - java.lang.OutOfMemoryError: unable to create new native thread
- eclipse安装ADT慢的龟速问题
- Java面向对象(一)
- Jdk内置性能测试工具的介绍
- maven的了解,eclipse创建并使用maven项目
- java Byte和各数据类型(short,int,long,float,double)之间的转换
- Struts标签实现分页(当前页码在中间显示)
- struts2中的Action接收表单传递过来的参数有3种方法
- Java web项目引入其他java项目支持
- java.lang.OutOfMemoryError: PermGen space
- Maven项目出错——java.lang.NoClassDefFoundError
- mybatis+springMVC新感悟
- 多态
- 【Java基础学习笔记】Thread+JLabel实现线程
- spring 注解扫描bean配置
- Java中的字符替换
- Struts2中的ModelDriven机制及其运用, ValueStack(值栈)
- 调用