Springboot上传文件的同时传递参数用对象接收的问题及解决方案

 更新时间:2025年09月19日 10:20:45   作者:咖啡不甜不好喝  
在Spring Boot中,若接口需同时接收文件和其他参数,应将文件用@RequestParam标注,其他参数封装对象并用@Validated校验,避免参数绑定冲突,本文给大家介绍Springboot上传文件的同时传递参数用对象接收,感兴趣的朋友跟随小编一起看看吧

在Springboot中,如果接口接收了文件,并且还接收了多个参数,为了对入参进行检验,将参数封装到对象,此时可能会导致问题,文件和参数不能同时被接收到,下面给出解决办法:
1、上传的文件参数用@RequestParam修饰
2、接收入参的对象,只用@Validated修饰,起参数校验的作用
代码如下:

@RestController
@RequestMapping("/punchIn")
@Slf4j
public class PunchInController {
    @Autowired
    private PunchInService punchInService;
    /**
     * 上传文件
     */
    @PostMapping("/upload")
    public BaseResult upload(@Validated ExcelUploadReq uploadReq, @RequestParam MultipartFile file) {
        try {
            punchInService.upload(uploadReq, file);
        } catch (Exception ex) {
            log.error(ex.getMessage(), ex);
            return BaseResult.error("文件上传失败,请检查文件数据是否正确");
        }
        return BaseResult.success();
    }
}

Postman请求如下:

到此这篇关于Springboot上传文件的同时传递参数用对象接收的问题及解决方案的文章就介绍到这了,更多相关Springboot上传文件同时传递参数内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Springboot快速入门教程

    Springboot快速入门教程

    今天给大家带来的是关于Springboot基础的相关知识,文章围绕着Springboot的基础知识及用法展开,文中有非常详细的介绍及代码示例,需要的朋友可以参考下
    2021-06-06
  • SpringBoot过滤敏感词的两种实现方式

    SpringBoot过滤敏感词的两种实现方式

    Spring Boot本身并不直接提供过滤敏感词的功能,但你可以使用第三方库或者自定义过滤器来实现这个需求,所以本文给大家介绍了SpringBoot过滤敏感词的两种实现方式,感兴趣的朋友可以参考下
    2024-06-06
  • java使用RSA加密方式实现数据加密解密的代码

    java使用RSA加密方式实现数据加密解密的代码

    这篇文章给大家分享java使用RSA加密方式实现数据加密解密,通过实例代码文字相结合给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友参考下
    2019-11-11
  • java 可重启线程及线程池类的设计(详解)

    java 可重启线程及线程池类的设计(详解)

    下面小编就为大家带来一篇java 可重启线程及线程池类的设计(详解)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-01-01
  • 解决struts2 拦截器修改request的parameters参数失败的问题

    解决struts2 拦截器修改request的parameters参数失败的问题

    这篇文章主要介绍了解决struts2 拦截器修改request的parameters参数失败的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-03-03
  • Java中使用辗转相除法求最大公约数

    Java中使用辗转相除法求最大公约数

    这篇文章主要介绍了Java中使用辗转相除法求最大公约数,本文直接给出代码实例,需要的朋友可以参考下
    2015-05-05
  • SpringBoot ResponseEntity标识Http响应方式

    SpringBoot ResponseEntity标识Http响应方式

    这篇文章主要介绍了SpringBoot ResponseEntity标识Http响应方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-07-07
  • Java拦截器和过滤器的区别分析

    Java拦截器和过滤器的区别分析

    今天带大家分析java拦截器和过滤器的区别,文中有非常详细的解释说明,对正在学习java的小伙伴们有很好的帮助,需要的朋友可以参考下
    2021-05-05
  • Jmeter固定定时器的使用详解

    Jmeter固定定时器的使用详解

    jmeter提供了多种定时器以便于我们进行接口的测试,你知道jmeter提供的定时器有哪些吗,本文就详细的介绍了Jmeter固定定时器的使用,感兴趣的可以了解一下
    2021-11-11
  • 使用SpringBoot发送邮箱验证码的简单实现

    使用SpringBoot发送邮箱验证码的简单实现

    这篇文章主要介绍了使用SpringBoot发送邮箱验证码的简单实现,咱们今天来讲使用QQ邮箱来发送和接收验证码,首先来介绍一下它在SpringBoot项目中的具体应用,需要的朋友可以参考下
    2023-04-04

最新评论