SpringBoot 開発で一般的に使用されるアノテーション

プログラマーは人生でさまざまなアルゴリズムに遭遇する可能性がありますが、プログラマーが必ず遭遇し、高い確率で習得する必要があるアルゴリズムは常にいくつかあります。今日はこれらの非常に重要な「must catch!」アルゴリズムについて話しましょう~

 

I.はじめに

 Springboot 開発者の間で最も一般的なのは、コントローラー、サービス、マッパー、エンティティであり、各レイヤーはアノテーションを使用してクラスまたはオブジェクトを変更します。一般的なアノテーションは次のとおりです。 @RestController @RequestMapping @Autowired @ApiOperation @PostMapping @RequestBody @Service @Transactional @Repository @TableName @Data したがって、これらのアノテーションはこれらのアルゴリズムをカプセル化します。  

2: 一般的なアルゴリズムの紹介

@RestController 

  • @RestController注: @ResponseBody + と同等@Controller
  • 使用@RestController批注对控制器类进行注释, 不再需要将@ResponseBody添加到所有请求映射方法中。@ResponseBody注释默认处于活动状态。

    说明它同时拥有这2注解的功能,@Controller注解表示后,该类将会被spring管理,@ResponseBody注解标识后,响应数据可以是文本或者JSON数据类型。所以这里我们return map的时候,可以直接输出JSON数据。当然@RestController注解属于springmvc的,并不属于springboot的。

@RequestMapping 

@RequestMapping を使用して Spring MVC でリクエストをマップします。これは、コントローラーが処理できる URL リクエストを指定します。これは、サーブレットの web.xml で設定するのと同等です。


@Autowired 

クラスのメンバー変数、メソッド、コンストラクターをマークし、Spring に Bean の自動アセンブリの作業を完了させることができます。


@ApiOperation

API ドキュメントの構築に使用されます。@ApiOperation(value = "インターフェイスの説明"、httpMethod = "インターフェイスのリクエスト メソッド"、response = "
インターフェイスの戻りパラメーターの種類"、notes = "インターフェイスのリリースの説明"
 
 
@PostMapping  

複合アノテーションである Spring Framework 4.3 では、@RequestMapping(method = RequestMethod.POST) のショートカットとして、アノテーション付きメソッドのセマンティクスをより適切に表現する @RequestMapping アノテーションのバリアントが導入されました。つまり、主に記憶しやすいように @PostMapping(value="/abc" ) に簡略化できます。
 

 
@RequestBody 

@RequestBody は主に、フロントエンドからバックエンドに渡される JSON 文字列内のデータ (リクエスト本文内のデータ) を受信するために使用されます。パラメーターを渡すために最も一般的に使用されるリクエスト本文は間違いなく POST リクエストです。そのため、@RequestBody を使用する場合は、通常は POST によって送信されるデータを受信します。バックエンドの同じ受信メソッドでは、@RequestBody と @RequestParam() を同時に使用できます。@RequestBody は最大 1 つだけ、@RequestParam() は複数持つことができます。
 リクエストには RequestBody が 1 つだけありますが、リクエストには複数の RequestParams を含めることができます。

 
@サービス 

@Service アノテーションは、現在のクラスをサービス クラスとしてマークするためにクラスで使用されます。このアノテーションを追加すると、現在のクラスが Spring コンテナーに自動的に挿入され、applicationContext.xml ファイルで Bean を定義する必要はありません。

 
@トランザクション  

@Transactional アノテーションは、宣言型トランザクション管理のために Spring フレームワークによって提供されるアノテーションです。これをメソッドまたはクラスに適用して、トランザクション管理が必要なメソッドまたはクラスを識別できます。@Transactional アノテーションを使用すると、トランザクションをより便利に管理し、データの一貫性と信頼性を確保できます。@Transactional アノテーションを導入する前に、まずトランザクションの基本概念を理解しましょう。トランザクションには、原子性、一貫性、分離性、耐久性という 4 つの基本特性があります。
 

 
@リポジトリ 

@Repository は、Bean を宣言するために使用される Spring アノテーションです。

 
@テーブル名

@TableName は mybatis-plus のアノテーションで、主にデータベース内のエンティティ タイプとテーブル間のマッピングを実装します。


@データ

@Data アノテーションの主な機能は、コードの単純さを改善することです。このアノテーションを使用すると、コード内の get()、set()、toString() およびその他のメソッドを大幅に節約できます。

 

3: アルゴリズムの概要

 springboot の起動プロセスとシーケンス

起動処理: SpringApplication オブジェクトを初期化し、オブジェクトの run メソッドを実行します。

最初の部分は SpringApplication の初期化モジュールで、いくつかの基本的な環境変数、リソース、コンストラクター、およびリスナーを構成します。
2 番目の部分では、起動プロセスの監視モジュール、ローディング構成環境モジュール、コア作成コンテキスト環境モジュールなど、アプリケーションの特定の起動スキームを実装します。
3 番目の部分は自動構成モジュールです。このモジュールは、springboot 自動構成の中核として機能します。

spring のアノテーションは、実際には xml ファイルをカプセル化する構成です。注釈は、一種の識別、一種のマークを意味します。設定されていることを示します。

 注釈リスト 

1. @SpringBootApplication: = @SpringBootConfiguration + @EnableAutoConfiguration + @ComponentScan 結合注解

1.1. @Configuration: Spring の XML 設定ファイルと同等。

1.2 @EnableAutoConfiguration: 自動構成 (コア アノテーション) を有効にします。


2. @RestController アノテーションは @Controller と @ResponseBody のコレクションであり、これがコントローラー Bean であり、関数の戻り値を HTTP 応答本文に直接埋める REST スタイルのコントローラーであることを示します。

1.4 @Component を CommandLineRunner とともに使用すると、プログラムの開始後にいくつかの基本的なタスクを実行できます。

エンティティ内の時刻の書式設定

	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	private Date createTime;

 

おすすめ

転載: blog.csdn.net/dongjing991/article/details/132403586