欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

簡(jiǎn)單快速對(duì)@RequestParam聲明的參數(shù)作校驗(yàn)操作

 更新時(shí)間:2021年08月23日 14:45:20   作者:多語(yǔ)種程序員  
這篇文章主要介紹了簡(jiǎn)單快速對(duì)@RequestParam聲明的參數(shù)作校驗(yàn)操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

@RequestParam參數(shù)校驗(yàn)

如下所示:

  • 第一步、在springMVC注入org.springframework.validation.beanvalidation.MethodValidationPostProcessor;
  • 第二步、重寫(xiě)校驗(yàn)異常
  • 第三步、在方法所在的類(lèi)添加@Validated注解
  • 第四步、在需要校驗(yàn)的參數(shù)前面添加校驗(yàn)規(guī)則

比如

接口入?yún)Ⅱ?yàn)證(@RequestParam\@Valid\@Validated\@RequestBody)

今天了解了下接口入?yún)Ⅱ?yàn)證問(wèn)題:

1、

  • @RequestParam:適用于Get請(qǐng)求且content-type為application/x-www-form-urlencoded
  • @RequestBody:適用于post請(qǐng)求且content-type為非application/x-www-form-urlencoded類(lèi)型,一般為application/json

2、

(1)入?yún)锧RequestParam或@RequestBody時(shí),不用加@valid和@validated;

(2)入?yún)锧NotNull時(shí)要在方法上加@valid或@validated,或者在類(lèi)上加@Validated(@valid不能作用于類(lèi)上),這樣@NotNull才能起作用。

@Valid
@GetMapping("/exam-info")
public Boolean getInfo(@NotNull(message="examId不能為空")Long examId){......}

(3)當(dāng)入?yún)閷?shí)體對(duì)象時(shí),需要在方法上加@Valid或@Validated或者在參數(shù)前加@Valid或@Validated,或者在類(lèi)上加

@Validated
@Valid
@GetMapping("/exam-info")
public Boolean getInfo(User user){......} 
 
@GetMapping("/exam-info")
public Boolean getInfo(@Valid User user){......}
 
@Validated
@GetMapping("/exam-info")
public Boolean getInfo(User user){......} 
 
@GetMapping("/exam-info")
public Boolean getInfo(@Validated User user){......}
 
public Class User{ 
    @NotNull("id不能為空")
    private Integer id;
    .
    .
    .
}

(4)嵌套驗(yàn)證

@valid作用于屬性上有嵌套驗(yàn)證作用,@validated不能作用于屬性上,如下代碼在User類(lèi)的屬性car上添加@valid注解,當(dāng)傳參id為空時(shí)會(huì)報(bào)錯(cuò)。

@GetMapping("/exam-info")
public Boolean getInfo(@Valid User user){.....}
 
@GetMapping("/exam-info")
public Boolean getInfo(@Validated User user){.....}
 
public class User{
  @Valid
  @NotNull("car不能為空")
  private Car car; 
  ........ 
}
 
public class Car{  
  @NotNull("id不能為空")
  private Integer id; 
  ........ 
}

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 細(xì)數(shù)Java接口的概念、分類(lèi)及與抽象類(lèi)的區(qū)別

    細(xì)數(shù)Java接口的概念、分類(lèi)及與抽象類(lèi)的區(qū)別

    下面小編就為大家?guī)?lái)一篇細(xì)數(shù)Java接口的概念、分類(lèi)及與抽象類(lèi)的區(qū)別。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2016-11-11
  • Spring?main方法中如何調(diào)用Dao層和Service層的方法

    Spring?main方法中如何調(diào)用Dao層和Service層的方法

    這篇文章主要介紹了Spring?main方法中調(diào)用Dao層和Service層的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-12-12
  • SpringBoot+MybatisPlus實(shí)現(xiàn)sharding-jdbc分庫(kù)分表的示例代碼

    SpringBoot+MybatisPlus實(shí)現(xiàn)sharding-jdbc分庫(kù)分表的示例代碼

    本文主要介紹了SpringBoot+MybatisPlus實(shí)現(xiàn)sharding-jdbc分庫(kù)分表的示例代碼,以分庫(kù),分表,分庫(kù)分表三種方式來(lái)實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-03-03
  • 詳解SpringBoot定時(shí)任務(wù)功能

    詳解SpringBoot定時(shí)任務(wù)功能

    這篇文章主要介紹了SpringBoot定時(shí)任務(wù)功能詳細(xì)解析,這次的功能開(kāi)發(fā)過(guò)程中也算是對(duì)其內(nèi)涵的進(jìn)一步了解,以后遇到定時(shí)任務(wù)的處理也更清晰,更有效率了,對(duì)SpringBoot定時(shí)任務(wù)相關(guān)知識(shí)感興趣的朋友一起看看吧
    2022-05-05
  • java獲取文件編碼,jsoup獲取html純文本操作

    java獲取文件編碼,jsoup獲取html純文本操作

    這篇文章主要介紹了java獲取文件編碼,jsoup獲取html純文本操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-08-08
  • Java設(shè)計(jì)模式之策略模式詳細(xì)解析

    Java設(shè)計(jì)模式之策略模式詳細(xì)解析

    這篇文章主要介紹了Java設(shè)計(jì)模式之策略模式詳細(xì)解析,策略模式中,定義算法族,分別封裝起來(lái),讓他們之間可以相互轉(zhuǎn)化,此模式讓算法的變化獨(dú)立于使用算法的客戶(hù),需要的朋友可以參考下
    2023-11-11
  • Java之InputStreamReader類(lèi)的實(shí)現(xiàn)

    Java之InputStreamReader類(lèi)的實(shí)現(xiàn)

    這篇文章主要介紹了Java之InputStreamReader類(lèi)的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-11-11
  • SpringBoot中@EnableAutoConfiguration注解的實(shí)現(xiàn)

    SpringBoot中@EnableAutoConfiguration注解的實(shí)現(xiàn)

    Spring Boot@EnableAutoConfiguration是一個(gè)強(qiáng)大的工具,可以簡(jiǎn)化配置過(guò)程,從而實(shí)現(xiàn)快速開(kāi)發(fā),本文主要介紹了SpringBoot中@EnableAutoConfiguration注解的實(shí)現(xiàn),感興趣的可以了解一下
    2024-01-01
  • Java if(boolean)和if(boolean=true)區(qū)別解析

    Java if(boolean)和if(boolean=true)區(qū)別解析

    這篇文章主要介紹了Java if(boolean)和if(boolean=true)區(qū)別解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-02-02
  • Spring boot 數(shù)據(jù)庫(kù)連接斷線(xiàn)重連問(wèn)題

    Spring boot 數(shù)據(jù)庫(kù)連接斷線(xiàn)重連問(wèn)題

    這篇文章主要介紹了Spring boot 數(shù)據(jù)庫(kù)連接斷線(xiàn)重連問(wèn)題,需要的朋友可以參考下
    2017-06-06

最新評(píng)論