最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java?Lombok實現(xiàn)手機(jī)號碼校驗的示例代碼

 更新時間:2023年07月05日 14:29:14   作者:python100  
手機(jī)號碼校驗通常是系統(tǒng)開發(fā)中最基礎(chǔ)的功能之一,本文主要介紹了Java?Lombok實現(xiàn)手機(jī)號碼校驗的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

手機(jī)號碼校驗通常是系統(tǒng)開發(fā)中最基礎(chǔ)的功能之一。在本文中,我們將會使用Java Lombok框架實現(xiàn)一個簡單的手機(jī)號碼校驗功能。Java Lombok是一個開源的Java庫,用于自動化生成Java類的代碼,它可以大大減少Java類的冗余代碼,提高程序員的開發(fā)效率。

一、添加Lombok依賴

首先,在項目的pom.xml文件中添加以下依賴:

<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <scope>provided</scope>
</dependency>

這里我們使用的是Maven構(gòu)建工具,如果您使用的是Gradle,則需要添加以下依賴:

implementation 'org.projectlombok:lombok:1.18.20'
annotationProcessor 'org.projectlombok:lombok:1.18.20'

二、實體類中添加Lombok注解

在實體類中添加下面的Lombok注解:

import lombok.Data;
import lombok.NonNull;
@Data
public class User {
    @NonNull
    private String name;
    // 添加正則表達(dá)式判斷手機(jī)號碼格式是否正確
    @Pattern(regexp = "^[1][3,4,5,7,8][0-9]{9}$", message = "請輸入正確的手機(jī)號碼")
    private String mobilePhone;
}

在上面的例子中,我們使用了@Data注解,它可以在編譯期間自動為我們生成Java類的基本代碼,如getter、setter和toString。

同時,在mobilePhone字段上,我們使用了@Pattern注解進(jìn)行手機(jī)號碼格式的校驗。

三、使用實體類進(jìn)行手機(jī)號碼校驗

我們可以使用以下代碼對自定義的User類的mobilePhone字段進(jìn)行校驗:

import javax.validation.ConstraintViolation;
import javax.validation.Validation;
import javax.validation.Validator;
import java.util.Set;
public class UserValidator {
    public boolean isValid(User user) {
        Validator validator = Validation.buildDefaultValidatorFactory().getValidator();
        Set<ConstraintViolation<User>> constraintViolations = validator.validate(user);
        return constraintViolations.isEmpty();
    }
}

在上面的例子中,我們使用了Java Validation API進(jìn)行手機(jī)號碼校驗。使用這個API需要引入以下依賴:

<dependency>
    <groupId>javax.validation</groupId>
    <artifactId>validation-api</artifactId>
    <version>2.0.1.Final</version>
</dependency>

在isValid方法中,我們首先創(chuàng)建了一個Validator對象,然后調(diào)用它的validate方法對傳入的User對象進(jìn)行校驗。如果校驗結(jié)果中沒有錯誤信息,我們就返回true,否則返回false。

四、使用JUnit對手機(jī)號碼校驗進(jìn)行單元測試

以下是一個簡單的JUnit測試類,在測試方法中,我們通過構(gòu)建一個User對象并將其mobilePhone字段設(shè)置為不合法的值時,來檢查是否能捕獲到校驗錯誤:

import org.junit.Assert;
import org.junit.Test;
public class UserValidatorTest {
    @Test
    public void testMobilePhoneValidation() {
        User user = new User();
        user.setName("張三");
        user.setMobilePhone("1234567890");
        UserValidator userValidator = new UserValidator();
        Assert.assertFalse(userValidator.isValid(user));
    }
}

五、完整代碼

以下是完整代碼,供參考:

1. User.java

import lombok.Data;
import lombok.NonNull;
import javax.validation.constraints.Pattern;
@Data
public class User {
    @NonNull
    private String name;
    @Pattern(regexp = "^[1][3,4,5,7,8][0-9]{9}$", message = "請輸入正確的手機(jī)號碼")
    private String mobilePhone;
}

2. UserValidator.java

import javax.validation.ConstraintViolation;
import javax.validation.Validation;
import javax.validation.Validator;
import java.util.Set;
public class UserValidator {
    public boolean isValid(User user) {
        Validator validator = Validation.buildDefaultValidatorFactory().getValidator();
        Set<ConstraintViolation<User>> constraintViolations = validator.validate(user);
        return constraintViolations.isEmpty();
    }
}

3. UserValidatorTest.java

import org.junit.Assert;
import org.junit.Test;
public class UserValidatorTest {
    @Test
    public void testMobilePhoneValidation() {
        User user = new User();
        user.setName("張三");
        user.setMobilePhone("1234567890");
        UserValidator userValidator = new UserValidator();
        Assert.assertFalse(userValidator.isValid(user));
    }
}

六、總結(jié)

在本文中,我們使用了Java Lombok和Java Validation API框架實現(xiàn)了手機(jī)號碼校驗功能。Lombok大大減少了Java類的冗余代碼,Validation API則使我們可以輕松地實現(xiàn)校驗功能。

到此這篇關(guān)于Java Lombok實現(xiàn)手機(jī)號碼校驗的示例代碼的文章就介紹到這了,更多相關(guān)Java Lombok手機(jī)號碼校驗內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 構(gòu)建Maven項目時可能遇到的問題

    構(gòu)建Maven項目時可能遇到的問題

    本篇是針對構(gòu)建 Maven 項目時可能出現(xiàn)的問題進(jìn)行總結(jié),并給出解決方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2026-03-03
  • java天數(shù)計算函數(shù)(當(dāng)前月天數(shù)、某月總天數(shù)及某月剩余天數(shù))4種方法實現(xiàn)代碼

    java天數(shù)計算函數(shù)(當(dāng)前月天數(shù)、某月總天數(shù)及某月剩余天數(shù))4種方法實現(xiàn)代碼

    日常開發(fā)中會遇到關(guān)于日期的計算,比如當(dāng)月的天數(shù)、兩日期之間的天數(shù)、當(dāng)月剩余天數(shù)等等,這篇文章主要給大家介紹了關(guān)于java天數(shù)計算函數(shù)(當(dāng)前月天數(shù)、某月總天數(shù)及某月剩余天數(shù))4種方法實現(xiàn)的相關(guān)資料,需要的朋友可以參考下
    2023-10-10
  • java中輸出pdf文件代碼分享

    java中輸出pdf文件代碼分享

    這篇文章主要介紹了java中輸出pdf文件代碼分享,本文直接給出實現(xiàn)代碼,需要的朋友可以參考下
    2015-03-03
  • SpringBoot項目中多數(shù)據(jù)源配置方法與使用場景

    SpringBoot項目中多數(shù)據(jù)源配置方法與使用場景

    在 Spring Boot 中配置多數(shù)據(jù)源是一個非常常見的需求,本文將為大家詳細(xì)介紹兩種主流的實現(xiàn)方式與使用場景,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2025-07-07
  • SpringSecurity7.0新特性詳解

    SpringSecurity7.0新特性詳解

    本文主要介紹了Spring Security 7.0 新特性詳解,文中通過示例代碼介紹的非常詳細(xì),幫助你更好地理解和應(yīng)用這些新特性,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2026-04-04
  • Java的AQS基本原理詳細(xì)分析

    Java的AQS基本原理詳細(xì)分析

    這篇文章主要介紹了Java的AQS基本原理詳細(xì)分析,AQS是Abstract Queued Synchronizer的簡稱,AQS提供了一種實現(xiàn)阻塞鎖和一系列依賴FIFO等待隊列的同步器的框架,本文主要講解分析其基本原理,需要的朋友可以參考下
    2024-01-01
  • Java詳細(xì)講解依賴注入的方式

    Java詳細(xì)講解依賴注入的方式

    Idea中使用@Autowire注解會出現(xiàn)提示黃線,強(qiáng)迫癥患者看著很難受,使用構(gòu)造器注入或者setter方法注入后可解決,下面我們一起來看看
    2022-06-06
  • javaCV開發(fā)詳解之推流器和錄制器的實現(xiàn)

    javaCV開發(fā)詳解之推流器和錄制器的實現(xiàn)

    這篇文章主要介紹了javaCV開發(fā)詳解之推流器和錄制器實現(xiàn),對JavaCV感興趣的同學(xué),可以參考下
    2021-04-04
  • Java使用Spire.Presentation for Java庫合并PowerPoint的技術(shù)教程

    Java使用Spire.Presentation for Java庫合并PowerPoint的技術(shù)教

    在現(xiàn)代企業(yè)和個人開發(fā)中,文檔處理是不可或缺的一環(huán),尤其是在報告演示、內(nèi)容整合等場景下,PowerPoint 文件的自動化處理需求日益增長,本文將深入探討如何利用 Java 編程語言,結(jié)合強(qiáng)大的 Spire.Presentation for Java庫,實現(xiàn)PowerPoiont文件的合并
    2026-01-01
  • 使用Java實現(xiàn)在Excel中創(chuàng)建下拉列表

    使用Java實現(xiàn)在Excel中創(chuàng)建下拉列表

    下拉列表(下拉框)可以確保用戶僅從預(yù)先給定的選項中進(jìn)行選擇,這樣不僅能減少數(shù)據(jù)輸入錯誤,還能節(jié)省時間提高效率,下面我們就來看看如何在java中利用免費(fèi)庫實現(xiàn)創(chuàng)建下拉列表吧
    2024-03-03

最新評論

鄂尔多斯市| 独山县| 新源县| 正安县| 黎城县| 即墨市| 民县| 六盘水市| 祁门县| 栖霞市| 瑞安市| 杭州市| 城固县| 福泉市| 板桥市| 中西区| 沾益县| 岗巴县| 呼图壁县| 灵武市| 兴文县| 罗田县| 文水县| 犍为县| 扬州市| 宕昌县| 连州市| 尤溪县| 扎赉特旗| 丹寨县| 余江县| 广平县| 西林县| 墨江| 保德县| 玉树县| 海安县| 曲阜市| 北安市| 雅安市| 密云县|