javaの注釈を勉強して、初めてspringbootプロジェクトをスタートさせます。
元の注釈:
元の注釈の役割は他の注釈を注釈することです。Java 5.0は、他のannotationタイプについて説明するために使用される4つの標準的なmeta-annotationタイプを定義している。Java 5.0定義のメタ注釈:1.@Target 2.@ Retect 3.@ Doccumented 4.5@Inherited
@Target
値は、注釈の使用範囲を説明するためのものです。
1.OSTRUCTOR:コンストラクタ2.FIELDを記述するために使用される:ドメイン3.LOCAL_を記述するために使用される。VRIABLE:局所変数4.METHODを記述するために使用します。方法5.PACKAGEを記述するために使用します。パケット6.PAPAAMETERを記述するために使用します。パラメータ7.TYPEを記述するために使用します。クラス、インターフェース(注釈タイプを含む)またはenum声明を記述します。
@Retentは注釈情報をどのレベルで保存する必要があるかを示し、注釈のライフサイクルを説明する。
値を取るには:
1.SOURCE:ソースファイルで有効(ソースファイル予約)2.CLASS:クラスファイルで有効(つまりクラス予約)3.RUNTIME:実行時に有効(つまり実行時は保留)
@Dcumentedは、メンバーがいません。
@レジェンド
コメントのライフサイクルを説明するためにどのレベルでこの注釈情報を保存する必要があるかを示す。
springbootを利用して起動して一例を書きます。
インターフェース
MyAnnotation{}
元の注釈の役割は他の注釈を注釈することです。Java 5.0は、他のannotationタイプについて説明するために使用される4つの標準的なmeta-annotationタイプを定義している。Java 5.0定義のメタ注釈:1.@Target 2.@ Retect 3.@ Doccumented 4.5@Inherited
@Target
値は、注釈の使用範囲を説明するためのものです。
1.OSTRUCTOR:コンストラクタ2.FIELDを記述するために使用される:ドメイン3.LOCAL_を記述するために使用される。VRIABLE:局所変数4.METHODを記述するために使用します。方法5.PACKAGEを記述するために使用します。パケット6.PAPAAMETERを記述するために使用します。パラメータ7.TYPEを記述するために使用します。クラス、インターフェース(注釈タイプを含む)またはenum声明を記述します。
@Retentは注釈情報をどのレベルで保存する必要があるかを示し、注釈のライフサイクルを説明する。
値を取るには:
1.SOURCE:ソースファイルで有効(ソースファイル予約)2.CLASS:クラスファイルで有効(つまりクラス予約)3.RUNTIME:実行時に有効(つまり実行時は保留)
@Dcumentedは、メンバーがいません。
@レジェンド
コメントのライフサイクルを説明するためにどのレベルでこの注釈情報を保存する必要があるかを示す。
springbootを利用して起動して一例を書きます。
package com.hcmony;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
import org.springframework.cloud.netflix.feign.EnableFeignClients;
import java.lang.annotation.*;
/**
* @FileName package PACKAGE_NAME.com.hcmony.MyAnnotation.java
* @Creator hcmony
* @Created 2017-11-15 16:50:00
*/
@Target(ElementType.TYPE)
@Documented
@Retention(RetentionPolicy.RUNTIME)
@SpringBootApplication
@ComponentScan
public@インターフェース
MyAnnotation{}
上記の例では、MyAnnotationをカスタマイズすることで、springbootプロジェクトを直接起動することができます。package com.hcmony.adwarn; import org.mybatis.spring.annotation.MapperScan; import org.springframework.boot.SpringApplication; import org.springframework.context.annotation.ComponentScan; @MyAnnotation public class AdWarnApplication { /** * : * * @author hcmny 2017 4 22 4:07:50 * @param args */ public static void main(String[] args) { SpringApplication.run(AdWarnApplication.class, args); } }