初学SpringMVC,使用MVC进行文件上传
最近在做一个文件上传的功能,走了不少弯路,话不多说,直接上代码:
导入各种jar包,首先是applicationContext.xml配置文件中:
<!-- 配置文件解析器 -->
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
</bean>
写两个前端页面:upLoad.jsp
<body>
<form action="upload.do" method="post" enctype="multipart/form-data">
姓名:<input type="text" name="username"/><br>
头像:<input type="file" name="mf"/><br>
姓名:<input type="submit" value="上传"/>
</form>
</body>
show.jsp
<body>
<h1>head image</h1>
<img alt="" src="${image }" style="width: 400px;height: 500px">
</body>
然后进入正题,写一个上传的战士页面的controller
@RequestMapping("/toUpload.do") //SpringMVC的映射标注
public String toUpload(){
return "upload";
}
然后
@Controller
public class FileUploadController { // MultipartFile 用于接受文件对象
@RequestMapping("/upload.do") // MultipartFile用于接受用户名和数据,否则文件上传时候也上encytype后悔接收不到数据
public String upload(String username, MultipartFile mf, HttpServletRequest req) { System.out.println(username + "||" + mf.getOriginalFilename() + "||" + mf.getSize());
// 把文件写入响应路径下
String realpath = req.getServletContext().getRealPath("images");// 获取到当前文件夹的真是路径
String orName = mf.getOriginalFilename();// 获取文件的原始名字
String fileName = System.currentTimeMillis() + orName.substring(orName.lastIndexOf("."));// 修改上传文件的名字,时间加后缀
String filePath = realpath + "/" + fileName;
System.out.println(filePath);
File file = new File(filePath);// 创建一个文件对象
try {
mf.transferTo(file);// 将文件写入到路径中
} catch (IllegalStateException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
req.setAttribute("image", "images/" + fileName);
return "show";
}
}
OK!,大功告成!
初学SpringMVC,使用MVC进行文件上传的更多相关文章
- Spring MVC实现文件上传
基础准备: Spring MVC为文件上传提供了直接支持,这种支持来自于MultipartResolver.Spring使用Jakarta Commons FileUpload技术实现了一个Multi ...
- SpringMVC:学习笔记(8)——文件上传
SpringMVC--文件上传 说明: 文件上传的途径 文件上传主要有两种方式: 1.使用Apache Commons FileUpload元件. 2.利用Servlet3.0及其更高版本的内置支持. ...
- Spring MVC的文件上传
1.文件上传 文件上传是项目开发中常用的功能.为了能上传文件,必须将表单的method设置为POST,并将enctype设置为multipart/form-data.只有在这种情况下,浏览器才会把用户 ...
- SpringMVC注解方式与文件上传
目录: springmvc的注解方式 文件上传(上传图片,并显示) 一.注解 在类前面加上@Controller 表示该类是一个控制器在方法handleRequest 前面加上 @RequestMap ...
- Spring MVC-学习笔记(5)spring MVC的文件上传、下载、拦截器
1.文件上传. spring MVC为文件上传提供了直接的支持,这种支持是即插即用的MultipartResolver(多部分解析器)实现的.spring MVC使用Apache Commo ...
- SpringMVC 通过commons-fileupload实现文件上传
目录 配置 web.xml SpringMVC配置文件 applicationContext.xml 文件上传 Controller 上传实现一 上传实现二 测试 依赖 配置 web.xml < ...
- MVC之文件上传1
MVC之文件上传 前言 这一节我们来讲讲在MVC中如何进行文件的上传,我们逐步深入,一起来看看. Upload File(一) 我们在默认创建的项目中的Home控制器下添加如下: public Act ...
- Asp.net mvc 大文件上传 断点续传
Asp.net mvc 大文件上传 断点续传 进度条 概述 项目中需要一个上传200M-500M的文件大小的功能,需要断点续传.上传性能稳定.突破asp.net上传限制.一开始看到51CTO上的这 ...
- Spring MVC的文件上传和下载
简介: Spring MVC为文件上传提供了直接的支持,这种支持使用即插即用的MultipartResolver实现的.Spring MVC 使用Apache Commons FileUpload技术 ...
随机推荐
- JAVA-WEB开发环境和搭建
JAVA Web开发环境与搭建 一.下载安装JDK 1.配置jdk开发环境 JAVA_HOME 2.path 二.下载安装eclipse javaEE版本 三.安装部署tomcat 3.1.安装: 直 ...
- WPF 背景网格图
利用DrawingBrush来画出背景网格图 <DrawingBrush Viewport="0,0,80,80" ViewportUnits="Absolute& ...
- mysql 批量更新的四种方法
批量更新的方法: 1 ) 逐条更新 代码如下: UPDATE mytable SET myfield = 'value' WHERE other_field = 'other_value'; 如果更新 ...
- java学习笔记—c3p0连接池与元数据分析(42)
第一步:导入c3p0包 第二步:在classpath目录下,创建一个c3p0-config.xml <?xml version="1.0" encoding="UT ...
- AcWing 143. 最大异或对
https://www.acwing.com/problem/content/145 #include <iostream> #include <algorithm> usin ...
- 2018年秋PTA乙级回顾
距离上次我一个人参加PAT考试已经过去快一个学期了,想想上次自己也是搞笑,自己一个人被这个书包就去了ZZ,人生地不熟的,乘坐公交车还坐反了.考完试因为不知道要等到考试结束就可以领取成绩证书,自己连那张 ...
- java中二维数组遍历
public class Demoshuzu2 { public static void main(String[] args) { int[][] arr2 = {{78,79,65, ...
- (C/C++) Array 印出所有排列組合
#include <stdio.h> #include <stdlib.h> #define N 4 , , , }; void swap(int *a, int *b) { ...
- Mac下一台电脑管理多个SSH KEY(转)
一.关于ssh是什么? http://www.ruanyifeng.com/blog/2011/12/ssh_remote_login.html 二.需求: 一台电脑上(Mac os)管理多个ssh ...
- sublime text 3 快捷键&&使用技巧
参考文章:https://github.com/jikeytang/sublime-text 这里有很多技巧http://www.jianshu.com/p/3cb5c6f2421c/ 置顶: Ctr ...