记一个校验参数注解的坑

本文介绍了Spring框架中的@Validated注解如何在POST和GET请求中使用,以及与@Valid的对比,并展示了如何在GET请求中使用@Size等验证注解。重点讲解了如何在接口设计中整合校验规则。

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

@Valid只有和 @RequestBody注解一起使用时才生效,且不能时get请求
@Valid和@Validated的区别是前者会嵌套校验,前者是Javax的注解,后者是Spring框架里的注解
如果get请求也想用@size这种校验注解,需要在类上加@Validated
代码如下所示

@RequestMapping("/inboundjavaprocess/portal")
@Validated
public interface PortalApi {


    @PostMapping(value = "/portalReceiptSnNo")
    ResultDTO test2(@Valid @RequestBody PortalReceiptSnNoRequestDTO portalReceiptSnNoRequestDTO);

    @GetMapping(value = "/portalgetinboundorderlist")
    ResultDTO test1(
            @RequestParam("company_code") String componyCode,
            @Size(max = 50) @RequestParam("erp_order_no_list") List<String> erpOrderNoList);
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值