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

解決get請(qǐng)求入?yún)NotNull驗(yàn)證不生效問題

 更新時(shí)間:2021年09月29日 09:20:04   作者:唱歌跳舞學(xué)java  
這篇文章主要介紹了解決get請(qǐng)求入?yún)NotNull驗(yàn)證不生效問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

get請(qǐng)求@NotNull驗(yàn)證不生效

在這里插入圖片描述

解決辦法

在該方法的controller類上加@Validated

在這里插入圖片描述

驗(yàn)證信息生效了

使用@NotEmpty,@NotBlank,@NotNull及@Valid注解校驗(yàn)請(qǐng)求參數(shù)

@NotEmpty,@NotBlank,@NotNull 這些注解所在的jar包路徑在javax.validation.constraints 的包下面,這個(gè)包下面也封裝了其他的注解

這里列舉一下常用的注解

并做簡(jiǎn)單介紹,其余還要在使用的時(shí)候慢慢挖掘

//被注釋的元素必須為null
@Null  
//被注釋的元素不能為null
@NotNull  
//被注釋的元素必須為true
@AssertTrue  
//被注釋的元素必須為false
@AssertFalse  
//被注釋的元素必須是一個(gè)數(shù)字,其值必須大于等于指定的最小值
@Min(value)  
//被注釋的元素必須是一個(gè)數(shù)字,其值必須小于等于指定的最大值
@Max(value)  
//被注釋的元素必須是一個(gè)數(shù)字,其值必須大于等于指定的最小值
@DecimalMin(value)  
//被注釋的元素必須是一個(gè)數(shù)字,其值必須小于等于指定的最大值
@DecimalMax(value)  
//被注釋的元素的大小必須在指定的范圍內(nèi)。
@Size(max,min) 
//被注釋的元素必須是一個(gè)數(shù)字,其值必須在可接受的范圍內(nèi)
@Digits(integer,fraction) 
//被注釋的元素必須是一個(gè)過去的日期 
@Past  
//被注釋的元素必須是一個(gè)將來(lái)的日期
@Future  
//被注釋的元素必須符合指定的正則表達(dá)式。
@Pattern(value) 
//被注釋的元素必須是電子郵件地址
@Email 
//被注釋的字符串的大小必須在指定的范圍內(nèi)
@Length 
//被注釋的字符串必須非空
@NotEmpty  
//被注釋的元素必須在合適的范圍內(nèi)
@Range

這些注解用于加在java的實(shí)體類屬性字段上,在進(jìn)行請(qǐng)求或請(qǐng)求的時(shí)候會(huì)根據(jù)字段的注解進(jìn)行對(duì)應(yīng)的校驗(yàn),簡(jiǎn)化校驗(yàn)相關(guān)的代碼。

當(dāng)校驗(yàn)不同過時(shí),會(huì)返回對(duì)應(yīng)的message描述

在前端請(qǐng)求解析到 controller 的時(shí)候,可使用 @valid 注解,開啟校驗(yàn),以下為使用的示例:

   @PostMapping("/get/user/course")
    public UserCourseInfo getUserCourseInfo(@Valid @RequestBody CreateUserRequest request) {
        return userService.getUserCourseInfo(request);
    }

CreateUserRequest 實(shí)體類并添加校驗(yàn)注解

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.apache.commons.lang.StringUtils;
import org.hibernate.validator.constraints.Length;
import javax.validation.constraints.Email;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
/**
 * <h1>創(chuàng)建用戶請(qǐng)求對(duì)象定義</h1>
 * Created by Qinyi.
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
public class CreateUserRequest {
    /** 用戶名 */
    @NotNull(message = "不可為空")
    @Length(min=20,max=30,message = "長(zhǎng)度在20到30")
    private String username;
    /** 郵箱 */
    @Email
    @NotBlank
    private String email;
}

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

相關(guān)文章

  • Java 分割字符串詳解及實(shí)例代碼

    Java 分割字符串詳解及實(shí)例代碼

    這篇文章主要介紹了 Java 分割字符串詳解及實(shí)例代碼的相關(guān)資料,需要的朋友可以參考下
    2016-12-12
  • java中駝峰與下劃線的寫法互轉(zhuǎn)

    java中駝峰與下劃線的寫法互轉(zhuǎn)

    這篇文章主要介紹了java中駝峰與下橫線的寫法互轉(zhuǎn)方法,文中先是進(jìn)行了簡(jiǎn)單的介紹,之后跟大家分享了一個(gè)自己編寫的工具類的示例代碼,有需要的朋友可以參考借鑒,下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-01-01
  • 一篇文章帶你入門Java接口

    一篇文章帶你入門Java接口

    這篇文章主要介紹了JAVA中接口的定義和接口的實(shí)現(xiàn),文中講解非常細(xì)致,配合代碼更好的幫大家學(xué)習(xí)參考,感興趣的朋友可以了解下
    2021-08-08
  • centos下GitLab+Jenkins持續(xù)集成環(huán)境搭建(安裝jenkins)

    centos下GitLab+Jenkins持續(xù)集成環(huán)境搭建(安裝jenkins)

    這篇文章主要為大家詳細(xì)介紹了centos下搭建GitLab+Jenkins持續(xù)集成環(huán)境,安裝jenkins的方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-04-04
  • Spring StopWatch使用實(shí)例詳解

    Spring StopWatch使用實(shí)例詳解

    這篇文章主要介紹了Spring StopWatch使用實(shí)例詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-01-01
  • java獲取和設(shè)置系統(tǒng)變量問題(環(huán)境變量)

    java獲取和設(shè)置系統(tǒng)變量問題(環(huán)境變量)

    這篇文章主要介紹了java獲取和設(shè)置系統(tǒng)變量問題(環(huán)境變量),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-01-01
  • java中的hashCode方法小例子

    java中的hashCode方法小例子

    這篇文章主要介紹了java中的hashCode方法小例子,有需要的朋友可以參考一下
    2013-12-12
  • Spring的IOC原理詳情

    Spring的IOC原理詳情

    這篇文章主要介紹了Spring的IOC原理詳情,IOC是Inversion?of?Control的縮寫,多數(shù)書籍翻譯成“控制反轉(zhuǎn)”,還有些書籍翻譯成為控制反向或者控制倒置
    2022-07-07
  • SpringMVC的REST風(fēng)格的四種請(qǐng)求方式總結(jié)

    SpringMVC的REST風(fēng)格的四種請(qǐng)求方式總結(jié)

    下面小編就為大家?guī)?lái)一篇SpringMVC的REST風(fēng)格的四種請(qǐng)求方式總結(jié)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來(lái)看看吧
    2017-08-08
  • Java實(shí)現(xiàn)十進(jìn)制與二進(jìn)制互轉(zhuǎn)的示例詳解

    Java實(shí)現(xiàn)十進(jìn)制與二進(jìn)制互轉(zhuǎn)的示例詳解

    這篇文章主要為大家詳細(xì)介紹了Java如何實(shí)現(xiàn)十進(jìn)制與二進(jìn)制的互轉(zhuǎn),文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)Java有一定幫助,需要的可以參考一下
    2022-11-11

最新評(píng)論