参考:http://club.jledu.gov.cn/?uid-5282-action-viewspace-itemid-188672
加上传功能,不影响原来数据和对象的获取。
1.修改spring mvc的配置文件,我的是webmvc-config.xml。加入
<bean id="multipartResolver"
class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<!-- 以字节为单位的最大上传文件的大小 -->
<property name="maxUploadSize" value="1000000" />
</bean>
2.加入两个依赖的jar包(spring官网可以下载到对应版本的常用依赖jar包):
com.springsource.org.apache.commons.io-1.4.0.jar
com.springsource.org.apache.commons.fileupload-1.2.2.jar
3.页面中的值。注意表单的file的name
为"file"
<form action="upload.do" method="post" enctype="multipart/form-data">
<input name="file" type="file" >
<input type="submit">
</form>
form中依然可以写其他的文本框,单选框,下拉框,等等,后台依旧能同时获取
4.在后台的Controller层的upload方法中的HttpServletRequest request 改变为 DefaultMultipartHttpServletRequest request
完整的后台代码
@RequestMapping(value="/upload")
public String update(DefaultMultipartHttpServletRequest request){
CommonsMultipartFile file = (CommonsMultipartFile) request.getFile("file");
//这里的file就是前台页面的name
if(file.isEmpty()){
return null;
}
//获取路径,生成完整的文件路径,当然要先创建upload文件夹
了。
String fileName = request.getRealPath("upload")+File.separator+System.currentTimeMillis()+file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf("."));
File uploadFile = new File(fileName);
try {
//上传
FileCopyUtils.copy(file.getBytes(), uploadFile);
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
5.页面加预览
页面的详细代码,加本地预览(火狐能用,IE9不能)
<script type="text/javascript">
function changePicUrl(){
var dFile = document.getElementById('file');
var dImg = document.getElementById('pic');
if(dFile.files){
dImg.src = dFile.files[0].getAsDataURL();//这里不懂??
}else
if(dFile.value.indexOf('\\') > -1 || dFile.value.indexOf('\/') > -1){
dImg.src = dFile.value;
}
}
</script>
<form action="head/upload.html" method="post" enctype="multipart/form-data">
上传文件<input name="file" type="file" onchange="changePicUrl()">
<img name="pic" id="pic" alt="" src="">
<input type="submit">
</form>
这个本地显示的代码还不大懂,怎么不支持ie9?
上传完毕。
分享到:
相关推荐
- 在Spring MVC中,使用`@RequestMapping`注解定义处理上传图片的接口,`@RequestParam("file")`用来接收前端上传的文件,`MultipartFile`是Spring提供的用于处理文件上传的类。 - 示例代码未完整展示,但一般来说...
5. **文件评论**:用户可以对文件进行评论,这通常需要一个数据库存储评论内容,并通过Struts2或者Spring MVC的控制器处理用户的提交,然后更新或检索评论信息。 6. **文件上传下载**:文件的上传和下载涉及到文件...
1. **文件上传**:用户通过前端界面选择文件并提交,后端通过SpringBoot的`@PostMapping`注解接收文件。SpringBoot的`MultipartFile`类可以用来处理上传的文件。 2. **文件存储**:接收到文件后,我们需要将其保存...
在Spring MVC的控制器类中,创建一个处理文件上传的处理器方法。使用`@RequestParam`注解来接收文件参数,如`MultipartFile image`。例如: ```java @PostMapping("/upload") public String handleFileUpload(@...
"HTTP多文件上传"是指用户能够一次上传多个文件到服务器的技术。本文将深入探讨这个主题,包括其工作原理、实现方式以及相关的技术和挑战。 一、HTTP协议与文件上传 HTTP(超文本传输协议)是互联网上应用最广泛的...
文件上传是Web应用程序中常见的一种功能,允许用户将本地计算机上的文件传输到服务器。这一过程在许多场景下都是至关重要的,比如在线文档编辑、图片分享、数据备份等。理解文件上传的工作原理及其在IT领域的应用,...
3. **多文件上传**:在HTML5中,`<input type="file">`元素的`multiple`属性允许用户一次选择多个文件进行上传。这个功能在前端通过JavaScript或者jQuery实现,用户可以选择并提交多个文件到服务器。 4. **可拖拽式...
通过结合Spring MVC的文件上传机制和Jcrop的图像选择预览功能,我们可以创建一个完整的图像上传和裁剪应用。这不仅提供了用户友好的交互,还确保了服务器端的安全处理和存储。在实际开发中,还需要考虑到错误处理、...
在JavaWeb开发中,文件上传是一项常见的功能,用于允许用户从他们的本地计算机向服务器传输文件。这个过程涉及多个步骤和技术,通常包括前端交互、后端处理以及存储策略。以下是对"JavaWeb文件上传功能"这一主题的...
3. **Spring MVC Controller处理**:在Spring MVC的Controller中定义一个处理文件上传的方法。例如: ```java @PostMapping("/upload") public @ResponseBody String handleFileUpload(@RequestParam("file") ...
在后端,Java开发者通常会使用Spring MVC或其他Web框架来接收前端发送的文件。文件上传是通过`MultipartFile`接口处理的,它提供了读取和存储上传文件的方法。服务器端需要验证文件是否符合预期的格式和大小限制,...
Java的Servlet API和MultipartFile(Spring MVC中的)常用于处理文件上传。 6. **Maven项目**: Maven是Java项目管理工具,用于构建、依赖管理和项目信息管理。项目结构遵循Maven约定,包含pom.xml配置文件来定义...
常见的服务器端框架如Java的Spring MVC、Python的Django或Flask、Node.js的Express等都提供了处理文件上传的API。例如,在Spring MVC中,可以使用`MultipartFile`接口来接收上传的文件,并将其保存到服务器的指定...
在Spring MVC框架中,文件上传是一项常见的功能,它允许用户通过网页将文件发送到服务器进行处理或存储。在这个场景中,我们关注的是如何测试这个过程,并在上传后将文件内容在页面上展示出来。让我们详细探讨一下...
在IT行业中,文件上传是一个常见的功能,特别是在Web应用中,用户可能需要上传各种类型的文件,如图片、文档或视频。本示例提供了“完整的上传文件的例子”,特别适用于那些正在学习或开发相关功能的开发者。这个...
1. 图片上传、预览和下载功能的实现。 2. 用户的相册管理,包括创建、删除、编辑相册。 3. 权限控制,比如只有相册所有者才能删除或编辑相册。 4. 使用Spring的事务管理处理并发操作,确保数据一致性。 5. 图片的...
本项目主要涉及"基于SSM框架的图片上传并回显",这是一个典型的文件上传功能,通常用于用户上传个人头像或者产品图片等,然后在网页上展示出来。下面将详细解析这个知识点: 1. **Spring框架**:Spring作为核心容器...
在文件上传场景中,Spring MVC提供了`@RequestParam`注解来接收前端提交的文件,同时支持多文件上传和大小限制等配置。 3. **Hibernate**:Hibernate是一个对象关系映射(ORM)框架,用于将Java对象映射到数据库中...
在Java Web中,Spring MVC框架是实现MVC的常用选择,它简化了文件上传的处理,提供了`@RequestParam`注解来获取上传的文件。 4. **HTML**: HTML(HyperText Markup Language)用于创建网页结构。在文件上传界面,...
在Java中,Spring MVC提供了MultipartFile接口处理文件上传。 五、大文件上传的挑战与解决方案 对于大文件上传,常规的POST请求可能会遇到超时、带宽限制等问题。为此,可以采用以下策略: 1. 分块上传:将大文件...