1.上传用到的一些表单控件,如下所示:
这个要在jsp文件头上面进行申明,才可以使用。
5.实现效果如下所示:
参考地址:
http://blog.csdn.net/sundenskyqq/article/details/6799038
http://www.open-open.com/home/space-668-do-blog-id-5708.html
- <div class="std_photo">
- 请上传图片:<img id="pictureImage1" name="pictureImage1" src="${userDto.pictureImage}" height="200" width="100" />
- <input type="hidden" id="pictureImage" name="pictureImage" value="">
- <input id="file" type="file" name="file" />
- <input type="button" value="保存" class="btn" />
- </div>
其中 类型type为hidden的控件为一个隐藏域,它专门用来用userDto里面的pictureImage交互的。而img图片控件同userDto.pictureImage绑定起来。 通过点击保存响应一个ajax事件.
2.ajax响应事件,如下所示:
- function ajaxFileUpload() {
- $.ajaxFileUpload({
- url : 'FileUploadForm.do?method=uploadAjax', // 需要链接到服务器地址
- secureuri : false,
- fileElementId : 'file', // 文件选择框的id属性
- dataType : 'json', // 服务器返回的格式,可以是json
- success : function(data, status) // 相当于java中try语句块的用法
- {
- //alert("成功: " + data.path);
- $("#pictureImage1")[0].src = data.path;
- $("#pictureImage").val(data.path);
- },
- error : function(data, status, e) // 相当于java中catch语句块的用法
- {
- alert("失败");
- }
- });
- }
注意:这个ajax事件用到了一个JS文件,为:
<script type="text/javascript" src="${contextPath}/js/base/user/ajaxfileupload.js"></script>这个要在jsp文件头上面进行申明,才可以使用。
3.ajax文件中使用到的文件上传控制器,如下所示:
- /*
- * Copyright (C) 2012 GZ-ISCAS Inc., All Rights Reserved.
- */
- package cn.ac.iscas.gz.nssc.base.web.user;
- import java.io.File;
- import java.io.FileOutputStream;
- import java.io.IOException;
- import java.util.HashMap;
- import java.util.Map;
- import javax.servlet.http.HttpServletRequest;
- import javax.servlet.http.HttpServletResponse;
- import net.sf.json.JSONObject;
- import org.springframework.stereotype.Controller;
- import org.springframework.ui.ModelMap;
- import org.springframework.util.FileCopyUtils;
- import org.springframework.validation.BindingResult;
- import org.springframework.web.bind.annotation.ModelAttribute;
- 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.MaxUploadSizeExceededException;
- import org.springframework.web.multipart.MultipartFile;
- import org.springframework.web.servlet.HandlerExceptionResolver;
- import org.springframework.web.servlet.ModelAndView;
- import org.springframework.web.servlet.view.RedirectView;
- import cn.ac.iscas.gz.nssc.base.domain.UploadForm;
- /**
- * @ClassName: UploadFormController
- * @Description: 文件上传控制器controller
- * @author xuzhongming Email: xuzhongming@gz.iscas.ac.cn
- * @date 2012-2-23 - 下午3:34:43
- * @version : 1.0
- */
- @Controller
- @RequestMapping(value = "/FileUploadForm.do")
- public class UploadFormController {
- @RequestMapping(params = "method=uploadAjax")
- public void uploadAjax(@RequestParam(value = "file") MultipartFile file,
- HttpServletRequest request, HttpServletResponse response) {
- String uploadDirPath = request.getSession().getServletContext()
- .getRealPath("/upload");
- MultipartFile image = file;
- File destFile = new File(uploadDirPath + "/"
- + image.getOriginalFilename());
- try {
- FileCopyUtils.copy(image.getBytes(), destFile);
- } catch (IOException e) {
- e.printStackTrace();
- }
- String destPath = request.getContextPath() + "/upload/"
- + destFile.getName();
- try {
- JSONObject jsonObject = new JSONObject();
- jsonObject.put("path", destPath);
- response.setContentType("text/html");
- response.getWriter().println(jsonObject.toString());
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- }
4.在配置文件中注册
- <!-- Configure the multipart resolver -->
- <bean id="multipartResolver"
- class="org.springframework.web.multipart.commons.CommonsMultipartResolver"
- p:defaultEncoding="utf-8"
- >
- <!-- one of the properties available; the maximum file size in bytes -->
- <property name="maxUploadSize" value="1024000"/>
- </bean>
这样就可以实现文件的上传了。
5.实现效果如下所示:
参考地址:
http://blog.csdn.net/sundenskyqq/article/details/6799038
http://www.open-open.com/home/space-668-do-blog-id-5708.html
相关推荐
Spring MVC 是一个基于Java的轻量级Web应用框架,它为构建动态Web应用程序提供了一种模型-视图-控制器(MVC)架构。在Spring MVC中,上传和下载功能是常见的需求,通常涉及到处理HTTP请求中的多部分数据以及生成响应...
在实际开发中,"springmvc4简单例子"可能还会涉及异常处理、国际化、拦截器、文件上传下载、AJAX交互等更多功能。通过学习和实践这样的例子,你可以逐步掌握Spring MVC 4的基本用法和最佳实践。
通过以上步骤,你可以利用Spring MVC和Commons FileUpload在Java Web应用中实现基本的文件上传功能。这个过程涉及到前端表单设计、后端配置、控制器方法编写以及文件处理逻辑。在实际项目中,可能还需要考虑更多的...
在IT行业中,SpringMVC是Spring框架的一部分,用于构建企业级Web应用程序,它提供了一种模型-视图-控制器(MVC)架构模式的实现。文件上传是Web应用中的常见功能,用户可能需要上传图片、文档等数据。在这个场景中,...
`springmvc上传jar包`这个主题主要关注如何在Spring MVC应用中实现文件上传,特别是使用`CommonsMultipartResolver`作为处理多部分请求的解析器。下面将详细讨论相关知识点。 首先,Spring MVC是Spring框架的一部分...
本文将深入探讨这两个框架以及相关的文件上传、下载、Ajax请求处理和用户踢出功能,这些都是Web开发中不可或缺的部分。 首先,Spring MVC是Spring框架的一个模块,专门用于构建基于模型-视图-控制器(MVC)架构的...
`MultipartFile`是Spring MVC提供的一个接口,用于处理多部分表单数据,如文件上传。 接下来,我们需要在前端使用Ajax来发送异步请求。通常,我们使用jQuery库简化Ajax操作。以下是一个简单的示例,展示了如何使用...
SpringMVC提供MultipartFile接口处理文件上传,而文件下载则可以通过StreamingResponseBody或者直接返回文件路径实现。这些功能的实现涉及了流处理和响应头设置,确保了文件传输的正确性和效率。 异常处理在Web应用...
- 使用MultipartFile接口处理文件上传,配置MultipartResolver来处理multipart请求。 13. **异常处理**: - 可以通过@ControllerAdvice和@ExceptionHandler全局处理异常,提高代码的可读性和可维护性。 14. **...
Spring MVC 是一款强大的Java Web开发框架,用于构建可维护、高性能和灵活的Web应用程序。...随着对Spring MVC的深入理解,开发者可以实现更丰富的功能,如表单处理、文件上传、国际化、数据绑定以及异常处理等。
11. **文件上传与下载**:SpringMVC提供API处理文件上传和下载,通过`MultipartFile`接口处理上传文件,通过`StreamingResponseBody`处理大文件下载。 通过这个简单的SpringMVC例子,初学者可以学习到如何设置项目...
总的来说,"springMvc+easyui+ueditor例子"展示了如何整合这些技术来创建一个功能全面的Web应用,实现了对富文本内容的管理,对于学习和理解前后端交互、MVC架构以及富文本编辑器的使用具有很好的参考价值。...
Spring MVC是Spring框架的一部分,它提供了一个用于构建Web应用程序的模型-视图-控制器(MVC)架构。理解并熟练掌握Spring MVC的配置对于任何Java Web开发者来说都是至关重要的。 首先,让我们来看看Spring MVC的...
SpringMVC是Spring框架的一部分,专门用于处理Web应用程序的请求-响应...掌握这些基础知识后,可以进一步学习更复杂的应用场景,如表单处理、文件上传下载、异常处理、数据绑定等,从而深入理解SpringMVC的强大功能。
下面我们将详细探讨SpringMVC在实现JSON响应、文件上传和数据提交等方面的应用。 1. **返回JSON**: 在现代Web应用中,JSON是一种广泛使用的数据交换格式,尤其在前后端分离的开发模式下。SpringMVC通过`@...
12. **上传下载支持**:SpringMVC内置了对文件上传和下载的支持,可以方便地处理这些操作。 13. **RESTful风格支持**:通过使用@RestController注解,可以轻松创建符合REST原则的API,支持HTTP动词如GET、POST、PUT...
SpringMVC 是一款基于 Java 的轻量级 Web 开发框架,是 ...通过这个简单的例子,初学者可以了解到 SpringMVC 中如何实现文件上传的基本流程。随着实践的深入,你将能够掌握更多关于文件上传的高级技巧和最佳实践。
SpringMVC提供方便的文件上传和下载功能,通过MultipartFile类型处理文件上传,OutputStream或ResponseEntity处理文件下载。 13. **AJAX集成**: SpringMVC通过JsonView或@ResponseBody注解,方便地将模型数据...
SpringMVC提供了便捷的文件上传和下载支持,使用MultipartFile接口处理文件上传,通过ResponseEntity或StreamingResponseBody处理大文件下载。 9. **RESTful支持** SpringMVC 3.1加强了对RESTful风格的支持,允许...