文档章节

springMVC--(讲解5)文件上传与传参测试

求是科技
 求是科技
发布于 2016/10/08 11:27
字数 253
阅读 20
收藏 0

#1.下载jar包

	<!-- file -->
 	<dependency>
    	<groupId>commons-fileupload</groupId>
    	<artifactId>commons-fileupload</artifactId>
    	<version>1.3.1</version>
	</dependency>
	<dependency>
    	<groupId>commons-io</groupId>
    	<artifactId>commons-io</artifactId>
    	<version>2.4</version>
	</dependency>

#2.配置springmvc.xml

	<!-- 文件上传 -->
	<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
		<property name="defaultEncoding" value="utf-8"></property>
		<property name="maxUploadSize" value="10485760000"></property>
		<property name="maxInMemorySize" value="40960"></property>
	</bean>

#3.controller层

	/**
	 * 测试mvc
	 * [@throws](https://my.oschina.net/throws) IOException 
	 * [@throws](https://my.oschina.net/throws) ServletException 
	 */
	@RequestMapping(value="/uploadFile",method= RequestMethod.POST)
	public String uploadFile(@RequestParam("file") CommonsMultipartFile file,@RequestParam("name") String name,HttpServletRequest req) throws IOException {
		//参数
		String tmpName = name;
		//获取文件名
		String fileName = file.getOriginalFilename();
		//获取上传文件的路径(项目的绝对路径)
		String path = req.getSession().getServletContext().getRealPath("/upload");
		//获取文件流
		InputStream is = file.getInputStream();
		//输出目的地
		OutputStream os = new FileOutputStream(new File(path,file.getOriginalFilename()));
		int len = 0;
		byte[] buffer = new byte[512];
		while ((len=is.read(buffer)) != -1) {
			os.write(buffer, 0, len);
			os.flush();
		}
		os.close();
		is.close();
		return "index.jsp";
	}

#4.jsp页面

<html>
<head>
	<meta charset="UTF-8"> 
 </head>
<body>
<h2>Hello World!</h2>
	<form action="uploadFile" method="post" enctype="multipart/form-data">
		file:<input type="file" name="file"><br>
		name:<input type="text" name="name"><br>
		<input type="submit" value="提交">
	</form>
</body>
</html>  

© 著作权归作者所有

共有 人打赏支持
求是科技
粉丝 91
博文 439
码字总数 226317
作品 0
成都
后端工程师
私信 提问
springboot学习(四)---Spring Boot 传参方式

注解 @RequestParam 这个注解用来绑定单个请求数据,既可以是url中的参数,也可以是表单提交的参数和上传的文件。 Form 表单 URL中传参 不能处理JSON格式的请求。 @PathVariable 这个注解可以...

u010775025
05/04
0
0
JForum3 Beta 技术架构及具体问题的解决

首先说明的一点,JForum3 Beta确实under heavy development,但功能上都是有的,需要自己做测试,并把所有Bug干掉。 一、技术架构 MVC框架:Vraptor3.5 依赖注入:Spring 3.0.5 持久化:Hib...

龚韬
2013/08/23
0
14
Spring MVC +Spring + Mybatis 构建分库分表总结 SSM搭建以及分库分表

分库分表在小型公司很少能遇到也很少使用,毕竟数据量没有那么大,当数据量大,所有数据都压在一张表时,如果单从数据库的角度考虑是可以分库分表处理来存储数据。分库分表 顾名思义就是根据查询...

奔跑吧代码
08/02
0
0
springmvc上传多个文件无法使用缓存

SpringMVC在做文件上传,我现在需要做的一个工程要求一次能够分开上传三个文件 同时文件2,文件3有可能不上传任何东西 我现在的写法是用了一个form表单提交,表单内有三个 每个的name各不相同...

水之笔记
2017/03/19
199
0
SpringMVC和Struts的区别

springmvc是单例,非线程安全 Struts2是线程安全的对每个请求都产生一个实例 springmvc的入口是Servlet,而Struts2的filter spring的前段控制器是DispatcherServlet Struts2的前端的核心控制...

ZR520
2016/11/03
27
0

没有更多内容

加载失败,请刷新页面

加载更多

关于MySQL 通用查询日志和慢查询日志分析

MySQL中的日志包括:错误日志、二进制日志、通用查询日志、慢查询日志等等。这里主要介绍下比较常用的两个功能:通用查询日志和慢查询日志。 1)通用查询日志:记录建立的客户端连接和执行的...

瑞查德-Jack
22分钟前
0
0
Vue组件封装 参数传递和事件传递

参数传递 子组件先定义好接收的参数和事件 <div > {{title}} <div class="row"> <Button icon="md-refresh" @click="refresh()" >刷新</Button> </div>......

Carbenson
27分钟前
0
0
如何在10分钟内设置EOS钱包和帐户?

由于SuperNode超级节点社区建立在EOS之上,我们希望引导我们的社区成员设置EOS钱包和帐户,以便充分参与我们的生态系统。 虽然设置过程可能不如其他区块链系统那么简单,但不要担心。本指南旨...

笔阁
32分钟前
2
0
8.04-Win10非U盘重装系统

注意:最好准备一个你所需版本的秘钥(不能是数字0开头的) 【所需:Win10的ISO镜像、能够解压ISO格式的解压缩工具、最好准备你所需版本的秘钥(不能是数字0开头的)】 1、创建新的文件系统为...

静以修身2025
32分钟前
1
0
Docker的架构与自制镜像的发布

一. docker 是什么 大家都知道虚拟机吧,windows 上装个 linux 虚拟机是大部分程序员的常用方案。公司生产环境大多也是虚拟机,虚拟机将物理硬件资源虚拟化,按需分配和使用,虚拟机使用起来...

程序猿拿Q
49分钟前
17
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部