SpringBoot常用計(jì)量與bean屬性校驗(yàn)和進(jìn)制數(shù)據(jù)轉(zhuǎn)換規(guī)則全面分析_第1頁(yè)
SpringBoot常用計(jì)量與bean屬性校驗(yàn)和進(jìn)制數(shù)據(jù)轉(zhuǎn)換規(guī)則全面分析_第2頁(yè)
SpringBoot常用計(jì)量與bean屬性校驗(yàn)和進(jìn)制數(shù)據(jù)轉(zhuǎn)換規(guī)則全面分析_第3頁(yè)
SpringBoot常用計(jì)量與bean屬性校驗(yàn)和進(jìn)制數(shù)據(jù)轉(zhuǎn)換規(guī)則全面分析_第4頁(yè)
SpringBoot常用計(jì)量與bean屬性校驗(yàn)和進(jìn)制數(shù)據(jù)轉(zhuǎn)換規(guī)則全面分析_第5頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第SpringBoot常用計(jì)量與bean屬性校驗(yàn)和進(jìn)制數(shù)據(jù)轉(zhuǎn)換規(guī)則全面分析目錄常用計(jì)量單位bean屬性校驗(yàn)進(jìn)制數(shù)據(jù)轉(zhuǎn)換規(guī)則yaml字面值表達(dá)式方式

常用計(jì)量單位

SpringBoot支持JDK8提供的時(shí)間與空間計(jì)量單位

@Data//lombok省去get/set/toString

@ConfigurationProperties(prefix="servers")//配置文件的位置,對(duì)應(yīng)的屬性注入

publicclassServerConfig{

privateStringipAddress;

privateintport;

privateStringdetail;

privateDurationserverTimeOut;

//存儲(chǔ)空間

privateDataSizedataSize;

}

配置文件中可以在之后直接加單位

servers:

ipAddress:192.158.0.1

port:1234

detail:zhangsan

serverTimeOut:10s

dataSize:4MB

運(yùn)行結(jié)果

或者不在配置文件加單位,在實(shí)體類(lèi)中加注解

bean屬性校驗(yàn)

開(kāi)啟Bean數(shù)據(jù)校驗(yàn)

①添加JSR303規(guī)范坐標(biāo)與Hibernate校驗(yàn)框架對(duì)應(yīng)坐標(biāo)

!--提供規(guī)范的接口--

dependency

groupIdjavax.validation/groupId

artifactIdvalidation-api/artifactId

/dependency

!--對(duì)上面接口的實(shí)現(xiàn)--

dependency

groupIdorg.hibernate.validator/groupId

artifactIdhibernate-validator/artifactId

/dependency

②:@Validated開(kāi)啟校驗(yàn)功能

③:設(shè)置校驗(yàn)規(guī)則

@Data//lombok省去get/set/toString

//@Component//交給spring容器管理

@ConfigurationProperties(prefix="servers")//配置文件的位置,對(duì)應(yīng)的屬性注入

//②開(kāi)啟校驗(yàn)

@Validated

publicclassServerConfig{

privateStringipAddress;

//③設(shè)置校驗(yàn)規(guī)則

@Max(value=9000,message="最大不能超過(guò)9000")

@Min(value=100,message="最大不能低于100")

privateintport;

privateStringdetail;

privateDurationserverTimeOut;

privateDataSizedataSize;

}

運(yùn)行之后,當(dāng)設(shè)置的校驗(yàn)不在這個(gè)范圍則會(huì)報(bào)錯(cuò)

小結(jié):

啟用Bean屬性校驗(yàn)

導(dǎo)入JSR303與Hibernate校驗(yàn)框架坐標(biāo)

使用@Validated注解啟用校驗(yàn)功能

使用具體校驗(yàn)規(guī)則規(guī)范數(shù)據(jù)校驗(yàn)格式

進(jìn)制數(shù)據(jù)轉(zhuǎn)換規(guī)則

配置文件中的數(shù)字存在進(jìn)制轉(zhuǎn)換

當(dāng)以0開(kāi)頭,且后續(xù)為(0-7),會(huì)自動(dòng)轉(zhuǎn)為八進(jìn)制

當(dāng)以0x開(kāi)頭,且后續(xù)為(0-9,a-f)會(huì)自動(dòng)轉(zhuǎn)為十六進(jìn)制

application.yml下

mysql:

Password1:01234

Password2:0x2345

Password3:0187

Password4:01234

test類(lèi)

packagecom;

importcom.pojo.ServerConfig;

importorg.junit.jupiter.api.Test;

importorg.springframework.beans.factory.annotation.Value;

importorg.springframework.boot.test.context.SpringBootTest;

importorg.springframework.context.ApplicationContext;

importorg.springframework.context.ConfigurableApplicationContext;

importorg.springframework.context.support.ClassPathXmlApplicationContext;

@SpringBootTest

classSpringboot11ConfigurationApplicationTests{

@Value("${mysql.Password1}")

privateStringpassword1;

@Value("${mysql.Password2}")

privateStringpassword2;

@Value("${mysql.Password3}")

privateStringpassword3;

@Value("${mysql.Password4}")

privateStringpassword4;

@Test

voidcontextLoads(){

System.out.println(password1);

System.out.println(password2);

System.out.println(passw

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論