springMvc简单的文件上传

用代码示范:

1:导入文件上传所需要的包(我的是maven环境,所以引入相关依赖)

 <!-- 上传组件包 -->
        <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>
        <dependency>
            <groupId>commons-codec</groupId>
            <artifactId>commons-codec</artifactId>
            <version>1.9</version>
        </dependency>

2.配置spring-mvc的文件上传部分

<!-- 配置文件上传,如果没有使用文件上传可以不用配置,当然如果不配,那么配置文件中也不必引入上传组件包 -->
	<bean id="multipartResolver"
		  class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
		<!-- 默认编码 -->
		<property name="defaultEncoding" value="utf-8" />
		<!-- 文件大小最大值 -->
		<property name="maxUploadSize" value="10485760000" />
		<!-- 内存中的最大值 -->
		<property name="maxInMemorySize" value="40960" />
	</bean>

3.表单要加enctype="multipart/form-data"

<form action="/userController/fileUpload.action" method="post" enctype="multipart/form-data">
     images:<input type="file" name="images" id="images"></input><br/>
    <input type="submit" value="提交"></input>
</form>

4.在控制层的参数是MultipartFile类型的才可以得到image的图片和大小

 /**
     * 上传文件
     *
     * @param images
     * @return
     */
    @RequestMapping(value = "fileUpload")
    public String fileUpload(@RequestParam("images") MultipartFile images, HttpServletRequest request) throws Exception {
        //获取文件名称 和文件大小
        System.out.println(images.getOriginalFilename() + "---size:" + images.getSize());
         //文件的保存地址 存放地址加图片名称  a1.jpg---size:81468
        File fileAddress = new File(request.getRealPath("/") + "/" + images.getOriginalFilename());
        //输出看下保存地址是什么
        System.out.println("fileAddress:"+fileAddress);
        //fileAddress:D:\Work\IDEA\T204\myspringMvc04\target\myspringMvc04\a1.jpg
        //保存 到地址中是以流的方式写入的
        FileUtils.copyInputStreamToFile(images.getInputStream(), fileAddress);
        return "myUser/index";
    }

5.找到你上传文件的地方查看图片是否上传成功

上传成功,一个简单的springMvc的上传文件就已经完成啦!

猜你喜欢

转载自blog.csdn.net/qqqnzhky/article/details/84496270