springboot / springcloudの一般的なアノテーション
@Data:@ Getter、@ Setter、@ ToString、@ EqualsAndHashCode、@ RequiredArgsConstructorなどを含むクラスに注釈が付けられます。;
プロパティが最終的に変更されたプロパティである場合、そのプロパティの設定メソッドは生成されません。
@Getter:アノテーションはクラスまたは特定のプロパティに書き込むことができ、クラス内のすべてのプロパティまたは特定のプロパティにゲッターメソッドを提供します。
@Setter:クラスまたは特定のプロパティに注釈を書き込むことができ、クラス内のすべての非最終変更プロパティまたは特定の非最終変更プロパティにセッターメソッドを提供します;
@ToString:クラスに書き込まれた注釈、LombokはtoStringを生成します()メソッドでは、デフォルトで、クラス名とすべての属性が(属性定義の順序で)コンマで区切られて出力されます。
@EqualsAndHashCode:デフォルトでは、すべての非静的(非静的)および非一時(非一時)属性を使用して、equals()およびhasCode()を生成します。また、excludeアノテーションを使用して一部の属性を除外することもできます。
@NonNull:この注釈は、プロパティまたはコンストラクターで使用されます。Lombokは、パラメーターの検証に使用できる非null宣言を生成します。これにより、nullポインターを回避できます。
@ Slf4j:アノテーションはクラスに書き込まれ、ログオブジェクトはユーザーが使用する実際のログフレームワークに従って生成されます。
@ Log4j:注釈はクラスに書き込まれ、log4jログオブジェクトにクラスのプロパティ名logを提供します
@Primaryの意味は、Spring IoCコンテナに、同じタイプの複数のBeamが見つかった場合は、@ Primaryとしてマークされたものを最初に使用することを伝えます
@Asyncは、非同期で実行できることを意味します。つまり、マルチスレッドを有効にします。非同期呼び出しが有効にならないように、変更された関数を静的型として定義しないでください
@EnableAsyncアノテーションは、非同期で実行できることを意味します。つまり、マルチスレッドを開始します。メソッドとクラスにマークを付けることができます。
@Asyncアノテーションを有効にするには、Spring Bootのメインプログラムで@EnableAsyncを構成する必要があります
@GetMapping = @RequestMapping(メソッド= RequestMethod.GET)の省略形
@PostMapping = @RequestMapping(メソッド= RequestMethod.POST)の省略形
@PutMapping = @RequestMapping(メソッド= RequestMethod.PUT)@PostMappingと@PutMappingは両方とも同等です。サーバーに情報を送信するために使用されます
@DeleteMapping = @RequestMapping(メソッド= RequestMethod.DELETE)、ロール:削除に対応し、削除URLマッピングであることを示します
@PatchMapping
Spring Cloudのcommonsモジュールは@LoadBalancedアノテーションを提供します。これは、LoadBalancerClientをRestTemplateに追加してクライアントロードバランシングを実現するのに便利です。
ソースコードを通じて、これがマークアップアノテーションであることがわかり、リボンを通じてクライアントの負荷分散機能を実現できます。
@Cleanupはストリームを閉じます
@Synchronized:オブジェクトの同期
@SneakyThrows:例外をスローします
@ConfigurationProperties(prefix = "upload")類似の構成情報をエンティティクラスに自動的にカプセル化します。プロパティファイルの値をクラスのプロパティに対応させることができます。
1.クラスでアノテーションを使用する2.ファクトリメソッドでアノテーション(@bean)を使用する
注:このアノテーションを使用して、springBootでプロパティファイルの値を読み取るだけでなく、@ Valueアノテーションを使用することもできます。