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

SpringBoot項目使用validated實現(xiàn)參數(shù)校驗框架

 更新時間:2024年05月30日 09:13:44   作者:風(fēng)止?  
當(dāng)談到Spring的參數(shù)校驗功能時,@Validated注解無疑是一個重要的利器,它為我們提供了一種簡單而又強大的方式來驗證請求參數(shù)的合法性,保證了系統(tǒng)的穩(wěn)定性和安全性,本文將介紹Spring Validated的基本用法以及在實際項目中的應(yīng)用,需要的朋友可以參考下

引言

當(dāng)談到Spring的參數(shù)校驗功能時,@Validated注解無疑是一個重要的利器。它為我們提供了一種簡單而又強大的方式來驗證請求參數(shù)的合法性,保證了系統(tǒng)的穩(wěn)定性和安全性。本文將介紹Spring Validated的基本用法以及在實際項目中的應(yīng)用。

一、validated是什么?

  1. @Validated注解的作用和使用方法

    • 可以用于Controller類或方法上,開啟對請求參數(shù)的校驗功能。
    • 通過在方法參數(shù)上使用其他校驗注解(如@NotNull、@NotBlank、@Min、@Max等),對請求參數(shù)進行校驗和驗證,確保參數(shù)的合法性。
    • 可配合使用Spring Validation API或其他支持JSR-303規(guī)范的驗證框架(如Hibernate Validator),發(fā)揮@Validated注解的最大效用。
  2. @Validated注解的實際應(yīng)用示例

    • 編寫一個用戶注冊接口,結(jié)合@Pattern注解對用戶名和密碼進行格式校驗。
    • 處理校驗失敗時的異常情況,并返回友好的錯誤信息給接口調(diào)用方。
  3. @Validated注解的注意事項和最佳實踐

    • 討論@Validated注解在復(fù)雜校驗場景下的使用技巧。
    • 如何在全局配置文件中聲明驗證器或配置驗證規(guī)則,使得@Validated注解更加靈活地適應(yīng)各種項目需求。

二、使用步驟

1.引入maven依賴

代碼如下(示例):

<!--        Validation合法性校驗(參數(shù))  參數(shù)校驗框架的依賴-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-validation</artifactId>
        </dependency>

2.使用實現(xiàn)

代碼如下 參數(shù)長度在  5 - 16位(示例):

/**
 * @Description: 用戶相關(guān)的控制層
 * @Author: windStop
 * @Date: 2024/5/26 16:18
 */
@RestController
@RequestMapping("/user")
@Validated  //啟用參數(shù)校驗功能
public class UserController {
    @Autowired
    private UserService userService;

    /**
     * 用于注冊新用戶  在注冊用戶的時候需要先判斷用戶名是否存在,因為用戶名不可以重復(fù)
     * 這里我不打算使用給用戶名添加唯一字段
     * @param username 用戶名
     * @param password 密碼
     * @return 是否注冊成功
     */
    @PostMapping("/register")
    public Result register(@Pattern(regexp = "^\\S{5,16}") String username, @Pattern(regexp = "^\\S{5,16}")String password){
        //1.判斷用戶是否存在
        if (userService.findByUsername(username)){
            return Result.error("用戶名已存在無法注冊");
        }
        //2.不存在進行注冊
        boolean flag = userService.register(username,password);
        return Result.success(flag);
    }

}

總結(jié)

通過本文的學(xué)習(xí),讀者將深入了解Spring Validated的使用方法和原理,掌握在實際項目中如何有效地利用@Validated注解進行參數(shù)校驗。希望本文能夠為您在Spring項目開發(fā)中遇到的參數(shù)校驗問題提供一些啟發(fā)和幫助。如有需要進一步了解或其他問題,請隨時告訴我。

以上就是SpringBoot項目使用validated實現(xiàn)參數(shù)校驗框架的詳細內(nèi)容,更多關(guān)于SpringBoot validated參數(shù)校驗的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 基于RxPaparazzo實現(xiàn)圖片裁剪、圖片旋轉(zhuǎn)、比例放大縮小功能

    基于RxPaparazzo實現(xiàn)圖片裁剪、圖片旋轉(zhuǎn)、比例放大縮小功能

    這篇文章主要為大家詳細介紹了基于RxPaparazzo實現(xiàn)圖片裁剪、圖片旋轉(zhuǎn)、比例放大縮小功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-05-05
  • Springboot中動態(tài)語言groovy介紹

    Springboot中動態(tài)語言groovy介紹

    Apache的Groovy是Java平臺上設(shè)計的面向?qū)ο缶幊陶Z言,這門動態(tài)語言擁有類似Python、Ruby和Smalltalk中的一些特性,可以作為Java平臺的腳本語言使用,這篇文章主要介紹了springboot中如何使用groovy,需要的朋友可以參考下
    2022-09-09
  • java Timer 定時每天凌晨1點執(zhí)行任務(wù)

    java Timer 定時每天凌晨1點執(zhí)行任務(wù)

    這篇文章主要介紹了java Timer 定時每天凌晨1點執(zhí)行任務(wù)的代碼,代碼簡單易懂,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-09-09
  • Mybatis空值關(guān)聯(lián)的具體實現(xiàn)

    Mybatis空值關(guān)聯(lián)的具體實現(xiàn)

    在復(fù)雜的數(shù)據(jù)庫查詢中,處理空值關(guān)聯(lián)是一項常見的需求,本文就來介紹一下Mybatis空值關(guān)聯(lián)的具體實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-07-07
  • IDEA 去除 mybatis.xml 文件黃色警告的圖文教程

    IDEA 去除 mybatis.xml 文件黃色警告的圖文教程

    這篇文章主要介紹了IDEA 去除 mybatis.xml 文件黃色警告的方法,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-07-07
  • Spring Boot利用Lombok減少Java中樣板代碼的方法示例

    Spring Boot利用Lombok減少Java中樣板代碼的方法示例

    spring Boot是非常高效的開發(fā)框架,lombok是一套代碼模板解決方案,將極大提升開發(fā)的效率,下面這篇文章主要給大家介紹了關(guān)于Spring Boot利用Lombok減少Java中樣板代碼的相關(guān)資料,需要的朋友可以參考借鑒,下面來一起看看吧。
    2017-09-09
  • Java實現(xiàn)帶頭結(jié)點的單鏈表

    Java實現(xiàn)帶頭結(jié)點的單鏈表

    這篇文章主要為大家詳細介紹了Java實現(xiàn)帶頭結(jié)點的單鏈表,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-09-09
  • Spring MVC實現(xiàn)mysql數(shù)據(jù)庫增刪改查完整實例

    Spring MVC實現(xiàn)mysql數(shù)據(jù)庫增刪改查完整實例

    這篇文章主要介紹了Spring MVC實現(xiàn)mysql數(shù)據(jù)庫增刪改查完整實例,從創(chuàng)建一個web項目開始,分享了項目結(jié)構(gòu)以及具體Java代碼和前端頁面等相關(guān)內(nèi)容,具有一定借鑒價值,需要的朋友可以了解下。
    2017-12-12
  • java網(wǎng)絡(luò)編程學(xué)習(xí)java聊天程序代碼分享

    java網(wǎng)絡(luò)編程學(xué)習(xí)java聊天程序代碼分享

    java聊天程序代碼分享,大家參考使用吧
    2013-12-12
  • Springboot實現(xiàn)對配置文件中的明文密碼加密詳解

    Springboot實現(xiàn)對配置文件中的明文密碼加密詳解

    我們在SpringBoot項目當(dāng)中,會把數(shù)據(jù)庫的用戶名密碼等配置直接放在yaml或者properties文件中,這樣維護數(shù)據(jù)庫的密碼等敏感信息顯然是有一定風(fēng)險的。所以本文為大家整理了對配置文件中的明文密碼加密的方法,希望對大家有所幫助
    2023-03-03

最新評論