更新時間:2020-10-29 16:45:14 來源:動力節點 瀏覽1099次
在業務開發過程中我們會遇到形形色色的注解,但是框架自有的注解并不是總能滿足復雜的業務需求,我們可以自定義注解來滿足我們的需求。根據注解使用的位置,文章將分成字段注解、方法、類注解來介紹自定義注解
字段注解
字段注解一般是用于校驗字段是否滿足要求,hibernate-validate依賴就提供了很多校驗注解,如 NotNull、 Range等,但是這些注解并不是能夠滿足所有業務場景的。比如我們希望傳入的參數在指定的String集合中,那么已有的注解就不能滿足需求了,需要自己實現。
自定義注解
定義一個 Check注解,通過 interface聲明一個注解
Target定義注解的使用位置,用來說明該注解可以被聲明在那些元素之前。
?ElementType.TYPE:說明該注解只能被聲明在一個類前。
?ElementType.FIELD:說明該注解只能被聲明在一個類的字段前。
?ElementType.METHOD:說明該注解只能被聲明在一個類的方法前。
?ElementType.PARAMETER:說明該注解只能被聲明在一個方法參數前。
?ElementType.CONSTRUCTOR:說明該注解只能聲明在一個類的構造方法前。
?ElementType.LOCAL_VARIABLE:說明該注解只能聲明在一個局部變量前。
?ElementType.ANNOTATION_TYPE:說明該注解只能聲明在一個注解類型前。
?ElementType.PACKAGE:說明該注解只能聲明在一個包名前
Constraint通過使用validatedBy來指定與注解關聯的驗證器
Retention用來說明該注解類的生命周期。
?RetentionPolicy.SOURCE:注解只保留在源文件中
?RetentionPolicy.CLASS:注解保留在class文件中,在加載到JVM虛擬機時丟棄
?RetentionPolicy.RUNTIME:注解保留在程序運行期間,此時可以通過反射獲得定義在某個類上的所有注解。
驗證器類
驗證器類需要實現ConstraintValidator泛型接口
第一個泛型參數類型Check:注解,第二個泛型參數Object:校驗字段類型。需要實現initialize和isValid方法,isValid方法為校驗邏輯,initialize方法初始化工作
使用方式
定義一個實體類
對sex字段加校驗,其值必須為woman或者man
測試
注意需要在User對象上加上@Validated注解,這里也可以使用@Valid注解
動力節點Spring視頻教程,全新企業級開發下載學習,Spring 是最受歡迎的企業級 Java 應用程序開發框架,數以百萬的開發人員使用 Spring 框架來創建性能好、易于測試、可重用的代碼。 本課程深入淺出講解Spring的核心技術IoC、AOP,剖析框架的源代碼。能讓學員掌握框架的原理和應用。
課程學習目錄
1.Spring:Spring在三層架構中的位置
2.Spring:Spring的作用
3.Spring:什么是Spring
4.Spring:Spring體系結構
5.Spring:Spring框架下載與介紹
6.Spring:Spring特點
7.Spring:IoC與DI
8.Spring:第一個程序-基本Jar包
9.Spring:第一個程序-測試環境搭建
1.Spring:第一個程序-定義配置文件
11.Spring:第一個程序-創建容器并從中獲取對象
12.Spring:第一個程序-Spring容器中對象是何時被創建的
13.Spring:第一個程序-FileSystemXmlApplicationContext
14.Spring:第一個程序-使用BeanFactory容器
15.Spring:第一個程序-兩個容器的區別
16.Spring:bean的裝配-默認裝配方式
17.Spring:bean的裝配-動態工廠Bean
18.Spring:bean的裝配-靜態工廠Bean
19.Spring:bean的裝配-容器中Bean的作用域
2.Spring:bean的裝配-Bean后處理器
21.Spring:bean的裝配-Bean后處理器的應用
22.Spring:bean的裝配-定制Bean的生命始末
完整目錄可以關注動力節點Java視頻教程
以上就是對“Spring注解視頻教程,經費系列下載”的介紹,希望對大家有所幫助,還想學習更多關于Java的課程,可以關注動力節點官網Java視頻教程,免費下載學習。
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習