来源:http://blog.csdn.net/awangz/article/details/9471161
可以在controller(spring mvc) 或者 action (struts mvc)
中直接使用CommonsMultipartResolver
也可以在spring配置文件中配置
jsp code
中直接使用CommonsMultipartResolver
- ...Controller...{
- //创建一个通用的多部分解析器.
- CommonsMultipartResolver commonsMultipartResolver = new
- CommonsMultipartResolver(request.getSession().getServletContext());
- //设置编码
- commonsMultipartResolver.setDefaultEncoding(”utf-8″);
- //判断 request 是否有文件上传,即多部分请求...
- if (commonsMultipartResolver.isMultipart(request))
- {
- //转换成多部分request
- MultipartHttpServletRequest multipartRequest =
- commonsMultipartResolver.resolveMultipart(request);
- // file 是指 文件上传标签的 name=值
- // 根据 name 获取上传的文件...
- MultipartFile file = multipartRequest.getFile("file");
- //上传后记录的文件...
- File imageFile = new File("fileName");
- //上传...
- file.transferTo(imageFile);
- }
- }
- ...Controller...{
- //创建一个通用的多部分解析器.
- CommonsMultipartResolver commonsMultipartResolver = new
- CommonsMultipartResolver(request.getSession().getServletContext());
- //设置编码
- commonsMultipartResolver.setDefaultEncoding(”utf-8″);
- //判断 request 是否有文件上传,即多部分请求...
- if (commonsMultipartResolver.isMultipart(request))
- {
- //转换成多部分request
- MultipartHttpServletRequest multipartRequest =
- commonsMultipartResolver.resolveMultipart(request);
- // file 是指 文件上传标签的 name=值
- // 根据 name 获取上传的文件...
- MultipartFile file = multipartRequest.getFile("file");
- //上传后记录的文件...
- File imageFile = new File("fileName");
- //上传...
- file.transferTo(imageFile);
- }
- }
...Controller...{ //创建一个通用的多部分解析器. CommonsMultipartResolver commonsMultipartResolver = new CommonsMultipartResolver(request.getSession().getServletContext()); //设置编码 commonsMultipartResolver.setDefaultEncoding(”utf-8″); //判断 request 是否有文件上传,即多部分请求... if (commonsMultipartResolver.isMultipart(request)) { //转换成多部分request MultipartHttpServletRequest multipartRequest = commonsMultipartResolver.resolveMultipart(request); // file 是指 文件上传标签的 name=值 // 根据 name 获取上传的文件... MultipartFile file = multipartRequest.getFile("file"); //上传后记录的文件... File imageFile = new File("fileName"); //上传... file.transferTo(imageFile); } }
也可以在spring配置文件中配置
- 也可以在Spring的配置文件中添加
- Xml代码
- <bean id=”multipartResolver” class=”org.springframework.web.multipart.commons.CommonsMultipartResolver”>
- <property name=”defaultEncoding” value=”UTF-8″ />
- </bean>
- 也可以在Spring的配置文件中添加
- Xml代码
- <bean id=”multipartResolver” class=”org.springframework.web.multipart.commons.CommonsMultipartResolver”>
- <property name=”defaultEncoding” value=”UTF-8″ />
- </bean>
也可以在Spring的配置文件中添加 Xml代码 <bean id=”multipartResolver” class=”org.springframework.web.multipart.commons.CommonsMultipartResolver”> <property name=”defaultEncoding” value=”UTF-8″ /> </bean>
jsp code
- <form id=”fileUploadForm” method=”post” action=”XXX.do?method=fileUpload” enctype=”multipart/form-data”>
- <tr>
- <td>File:</td>
- <td><input type=”file” name=”file”></td>
- </tr>
- <tr>
- <td><input type=”hidden” name=”fileOwner” value=”1002″/></td>
- <td><input type=”submit” value=”submit”></td>
- </tr>
- </form>
==========================分割线==================================================================
另外一篇,也是关于Spring MVC上传文件的,也放到这里吧
转载自: http://mn960mn.blog.163.com/blog/static/11410308420109493440818/
package net.hqit.action;
import java.io.File;
import java.io.IOException;
import javax.servlet.http.HttpServletRequest;
import org.springframework.stereotype.Controller;
import org.springframework.util.FileCopyUtils;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.multipart.MultipartFile;
@Controller
public class FileUploadController {
@RequestMapping(value="/upload.do",method=RequestMethod.POST)
public String upload(@RequestParam("imageFile") MultipartFile image,HttpServletRequest request) throws IOException
{
String path = request.getRealPath("/upload");
request.setAttribute("name",image.getOriginalFilename());
request.setAttribute("img","<img src='http://mn960mn.blog.163.com/blog/upload/"+image.getOriginalFilename()+"'></img>");
FileCopyUtils.copy(image.getBytes(),new File(path+"/"+image.getOriginalFilename()));
return "ok";
}
}
spring-servlet.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:p="http://www.springframework.org/schema/p"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd">
<context:component-scan base-package="net.hqit.action"/>
<bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter" />
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/>
<property name="prefix" value="/WEB-INF/view/"/>
<property name="suffix" value=".jsp"/>
</bean>
<bean id="multipartResolver"
class="org.springframework.web.multipart.commons.CommonsMultipartResolver"
p:defaultEncoding="utf-8" />
</beans>
别忘了加入commons里的fileupload跟io两个JAR包,这样就可以了。
import java.io.File;
import java.io.IOException;
import javax.servlet.http.HttpServletRequest;
import org.springframework.stereotype.Controller;
import org.springframework.util.FileCopyUtils;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.multipart.MultipartFile;
@Controller
public class FileUploadController {
@RequestMapping(value="/upload.do",method=RequestMethod.POST)
public String upload(@RequestParam("imageFile") MultipartFile image,HttpServletRequest request) throws IOException
{
String path = request.getRealPath("/upload");
request.setAttribute("name",image.getOriginalFilename());
request.setAttribute("img","<img src='http://mn960mn.blog.163.com/blog/upload/"+image.getOriginalFilename()+"'></img>");
FileCopyUtils.copy(image.getBytes(),new File(path+"/"+image.getOriginalFilename()));
return "ok";
}
}
spring-servlet.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:p="http://www.springframework.org/schema/p"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd">
<context:component-scan base-package="net.hqit.action"/>
<bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter" />
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/>
<property name="prefix" value="/WEB-INF/view/"/>
<property name="suffix" value=".jsp"/>
</bean>
<bean id="multipartResolver"
class="org.springframework.web.multipart.commons.CommonsMultipartResolver"
p:defaultEncoding="utf-8" />
</beans>
别忘了加入commons里的fileupload跟io两个JAR包,这样就可以了。
相关推荐
// 存储或处理文件... return "文件上传成功"; } catch (Exception e) { return "文件上传失败:" + e.getMessage(); } } else { return "请选择文件"; } } ``` 4. **前端HTML表单** 在HTML页面上,创建...
总结,Java SpringBoot实现文件上传主要涉及配置文件设置、创建Controller处理请求、使用`MultipartFile`接口来操作上传文件,并根据实际需求进行文件验证、存储和管理。通过这些步骤,你可以构建出稳定、安全的文件...
Spring MVC为文件上传提供了便利的支持,主要依赖于`CommonsMultipartResolver`解析器,它是Apache Commons FileUpload库与Spring MVC的集成。在项目中,我们需要添加以下依赖以启用文件上传功能: ```xml ...
在本文中,我们将深入探讨如何使用Spring MVC框架与Ajax技术结合来实现文件上传的功能。Spring MVC是Spring框架的一部分,提供了一种模型-视图-控制器(MVC)架构模式,用于构建Web应用程序。Ajax(Asynchronous ...
当Struts和Spring一起使用时,文件上传的处理通常在Action类中完成,这里需要集成Spring的`@Autowired`注解和Struts的`ActionForm`。Spring的`@RequestParam`注解可以用来获取`CommonsMultipartFile`对象。同时,...
6. **优化**:为了提高性能,可以使用异步处理文件上传和下载,利用Spring MVC的AsyncController或者Servlet 3.0的异步处理特性。另外,对于大文件操作,可以考虑分块上传和下载。 7. **实际应用场景**:这些功能...
本文将深入探讨如何使用`MultipartFile`实现文件上传,以及如何结合FTP服务器进行跨服务器文件传输。 首先,要启用SpringMVC的文件上传功能,我们需要在配置文件中声明一个`MultipartResolver`。`...
在Spring框架中,文件上传是一项常见的功能,尤其在构建Web应用程序时。本实例将深入探讨如何在Java Spring中实现文件上传,并提供一个完整的配置示例。文件上传在现代Web应用中有着广泛的应用,如用户头像上传、...
在本文中,我们将深入探讨如何使用Spring MVC框架与uploadify插件进行文件上传,特别是针对图片的上传。Spring MVC是Spring框架的一部分,专门用于构建Web应用程序,而uploadify是一款前端JavaScript插件,使得用户...
### Spring MVC 文件上传详解 #### 一、Spring MVC与文件上传概述 在现代Web应用开发中,文件上传是一项常见的需求。Spring MVC框架提供了强大的支持来处理这类操作,它利用了Apache Commons FileUpload库来实现...
在Spring MVC中,文件上传依赖于`CommonsMultipartResolver`,它是由Apache Commons FileUpload库提供的。为了启用文件上传,我们需要在`application.properties`或`application.yml`中配置以下内容: ```...
在Spring MVC中,文件的上传和下载是常见的功能需求,这涉及到客户端与服务器之间的数据传输。本篇文章将深入探讨Spring MVC如何实现文件上传和下载。 ### 文件上传 1. **依赖配置**:在Spring MVC项目中,为了...
使用Spring WebFlux或Spring MVC的Async支持,可以实现文件上传的异步处理,提高系统的响应性能。通过定义`@PostMapping`并返回`DeferredResult`或使用`WebClient`,可以在后台线程中处理文件上传。 10. **最佳...
在Spring MVC中,文件上传是常见的功能之一,用于接收用户通过表单提交的文件数据。本文将深入探讨Spring MVC中的文件上传方法,并基于提供的“spring学习:spring mvc上传文件方法分析”标题进行详细的解析。 首先...
在Spring MVC框架中,文件上传和下载是...1. 配置MultipartResolver:Spring MVC默认使用CommonsMultipartResolver来处理多部分(multipart)请求,也就是文件上传。首先,在Spring的配置文件中添加以下配置: ```xml ...
<bean name="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver"> *1024*1024" /> ``` 步骤 3:上传文件 在控制器中,我们可以使用 MultipartFile 对象来接收上传...
在SpringMVC的控制器中,创建一个处理POST请求的方法,使用`@RequestParam`注解接收上传的文件。 ```java import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind....
在SpringMVC的配置中,需要启用MultipartResolver,通常是`CommonsMultipartResolver`,并在`web.xml`或Spring Boot的配置文件中设置最大文件大小、总请求大小限制等参数。 8. **安全考虑** 上传文件时要考虑安全...
在Spring MVC中实现文件上传并显示进度是一项常见的需求,特别是在用户需要等待较长时间的大型文件上传时。这个功能可以通过监听文件上传的进度并在前端实时更新来提升用户体验。下面将详细介绍如何利用Spring MVC...
在Spring MVC中,文件上传主要依赖于`CommonsMultipartResolver`,这是一个基于Apache Commons FileUpload库的解析器,用于处理multipart/form-data类型的表单数据,这是文件上传的标准格式。 **配置Spring MVC支持...