Java/SpringMvc/MultipartFile文件上传

本文介绍了使用Java的MultipartFile进行文件上传的步骤,包括Maven依赖、spring-mvc.xml配置、所需jar包以及Controller中接收文件参数的注解使用。强调了前端name属性与后端@RequestParam注解的一致性问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Java通过MultipartFile进行文件上传

依赖包:Maven

    <dependency>
        <groupId>commons-io</groupId>
        <artifactId>commons-io</artifactId>
        <version>2.5</version>
    </dependency>
    
    <dependency>
        <groupId>commons-fileupload</groupId>
        <artifactId>commons-fileupload</artifactId>
        <version>1.2.2</version>
    </dependency>

spring-mvc.xml配置

        <bean id="multipartResolver"         class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
	    <!-- 设定文件上传的最大值-->
	    <property name="maxUploadSize" value="10485760"></property>
	    <!-- 设定文件上传时写入内存的最大值,如果小于这个参数不会生成临时文件,默认为10240 -->
	    <property name="maxInMemorySize" value="10240000"></property>
	    <!-- 设定默认编码 -->
	    <property name="defaultEncoding" value="UTF-8"></property>
	</bean>

几个必须的Jar

import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpSession;
import java.io.File;
import java.util.List;

Controller类接收参数及简单编码上传

@RequestParam("file") 这个file一定要跟前端name名称一致

前端的name熟悉file 跟我们接受参数的注解值保持一致

<input type='file' name = 'file' />

一定要注意,因为我们前后端分离没有沟通好吃了个大亏

@RequestMapping(value = "uploadFile", method={RequestMethod.GET,RequestMethod.POST})
    @ResponseBody
    public Object uploadFiles(@RequestParam("file")MultipartFile file1,HttpSession session) throws Exception {
        
        try{
            //上传到这个目录下边
            File fileDir = new File("E:/jt-upload");
            //这个是判断文件夹存在不存在
            if(!fileDir.exists()){
                //不存在就创建
                fileDir.mkdirs();
            }
            //获取文件名
            String fileName = file1.getOriginalFilename();
            //开始上传
            file1.transferTo(new File("E:/jt-upload/"+fileName));
            
        }catch (Exception e){
            logger.error("{(uploadFile)上传文件失败::::!}", e);
            e.printStackTrace();
        }
        return result;
    }

简单整理一下MultipartFile上传文件的用法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值