springboot基于MultipartFile实现文件上传

该博客介绍了如何在SpringMVC中实现文件上传功能,通过`MultipartFile`接收文件,并展示了如何设置保存路径及文件名。同时,详细讲解了如何限制上传文件的大小,包括单个文件和总请求大小的限制,以及如何将这些限制配置到应用中。最后,提到了通过HTTP POST请求和multipart/form-data协议进行文件上传的操作方式。
摘要由CSDN通过智能技术生成

MultipartFile是springMVC的jar包,不需要其它坐标,可以直接使用

一. 新建controller

@RequestMapping("/uploadTest1")
    public String test1(@RequestParam("imgFile") MultipartFile file, HttpServletRequest request){
        //获取上传文件名,包含后缀
        String originalFilename = file.getOriginalFilename();
        //获取后缀
        String substring = originalFilename.substring(originalFilename.lastIndexOf("."));
        //保存的文件名
        String dFileName = UUID.randomUUID()+substring;
        //保存路径
        //springboot 默认情况下只能加载 resource文件夹下静态资源文件
        String path = "D:/workspace/demo2/src/main/resources/static/image/";
        //生成保存文件
        File uploadFile = new File(path+dFileName);
        System.out.println(uploadFile);
        //将上传文件保存到路径
        try {
            file.transferTo(uploadFile);
        } catch (IOException e) {
            e.printStackTrace();
        }
        return "上传"+dFileName+"成功";
    }

说明:
1. http://localhost:8080/uploadTest1
2. http请求方式实现文件上传条件:1.post请求 2.form表单提交 3.multipart/form-data 协议类型http请求方式
3. 上传后查看路径 http://localhost:8080/image/文件名.后缀

二. 限制上传文件大小

在启动类application.java添加@bean方法

/**
	 * 限制上传文件大小
	 */
	@Bean
	public MultipartConfigElement multipartConfigElement(){
		MultipartConfigFactory factory = new MultipartConfigFactory();
		//单个文件最大 5m 可以使用读取配置
		factory.setMaxFileSize("5120KB"); //KB,MB
		/// 设置总上传数据总大小 50m
		factory.setMaxRequestSize("512000KB");
		return factory.createMultipartConfig();
	}

说明:
可以将代码中限制大小的值存放到配置文件中,以读取配置的形式加载进来.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值