Spring アノテーションは XML 構成を削減できます。アノテーション構成には XML 構成に比べて多くの利点があります。Java のリフレクション メカニズムを最大限に活用してクラス構造情報を取得できるため、構成作業を効果的に削減できます。たとえば、JPA アノテーションを使用して ORM マッピングを構成する場合、PO 属性の名前や型などの情報を指定する必要はなく、リレーションシップ テーブルのフィールドと PO 属性の名前や型が一致していれば、タスク属性を記述する必要すらありません。マッピング情報 - この情報は Java リフレクション メカニズムを通じて取得できるためです。
推奨コース: Java チュートリアル 。
アノテーションを使用する前に、自動スキャン機能を有効にする必要があります。
ここで、base-package は必要なパッケージ (サブパッケージを含む) です。スキャンされることになります。
<context:component-scan base-package="cn.test"/>
@Configuration はクラスを IoC コンテナとして扱います。 @Bean がそのメソッド ヘッダーの 1 つに登録されている場合、それは Spring コンテナ内の Bean として使用されます。
@Scope 注釈スコープ
@Lazy(true) は初期化の遅延を示します
@サービスはビジネス層コンポーネントに注釈を付けるために使用され、
@コントローラーが使用されます制御層コンポーネント (Struts のアクションなど) に注釈を付けるため
@リポジトリは、データ アクセス コンポーネント、つまり DAO コンポーネントに注釈を付けるために使用されます。
@コンポーネントは通常、コンポーネントを指します。コンポーネントの分類が難しい場合は、このアノテーションを使用してコンポーネントに注釈を付けることができます。
@Scope は、スコープ スコープ (クラスで使用) を指定するために使用されます。
--------------jsr250----
@PostConstruct は、初期化メソッドの指定に使用されます (メソッドで使用されます)
@PreDestory は、破棄メソッドの指定に使用されます (メソッドで使用されます)
@リソースは、名前によってアセンブルされます一致する Bean がない場合、名前はタイプごとにアセンブルされます。
----------
@DependsOn: Bean が初期化および破棄される順序を定義します。
@Primary: 自動実行中に複数の Bean が表示される場合アセンブリ 候補が選択されると、@Primary アノテーションが付けられた Bean が優先候補になります、そうでない場合は例外がスローされます
@Autowired はデフォルトでタイプによってアセンブルされます。アセンブリを名前で使用したい場合は、 @Qualifier アノテーションと組み合わせて使用できます。以下のように:
@Autowired @Qualifier("personDaoBean") 一緒に使用される複数のインスタンスがあります
@PostConstruct 初期化アノテーション
@PreDestroy 破壊アノテーション デフォルトのシングルトン 起動時にロードされますか? ?
@Async 非同期メソッドを呼び出すには、次のコードを追加する必要があります:
<bean id="taskExecutor" class="org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor"> <property name="corePoolSize" value="10"/> <property name="maxPoolSize" value="300"/> </bean> <task:annotation-driven/>
@Async アノテーションを有効にするには、@EnableAsync
# を構成する必要もあります。 ## Spring Boot のメイン プログラム内。Spring では、@Async アノテーションに基づくメソッドは非同期メソッドと呼ばれます。これらのメソッドは、実行時に独立したスレッドで実行されます。呼び出し元完了するまで待つ必要はなく、 は他の操作を続行できます。 @Async によって変更された関数を静的型として定義しないでください。そのため、非同期呼び出しは有効になりません。@ComponentScan(basePackages = "com.xzc.")@EnableAutoConfiguration @SpringBootApplication@PropertySource({"クラスパス:application.properties", "クラスパス:xzc.properties"})@ImportResource("クラスパス:ws-client .xml")@EnableRedisHttpSession@EnableAspectJAutoProxy@EnableCaching@EnableAsync@Configuration @EnableScheduling はスケジュールされたタスクを開始します @Entity アノテーションは、これがエンティティ Bean であることを指定します@SuppressWarnings アノテーション?
1. @PathVariable @RequestMapping URI テンプレート スタイルのマッピング、つまり someUrl/{paramId} を使用する場合、このときの paramId は @Pathvariable アノテーションを介して渡すことができます。バインド URI テンプレート内の変数 ownerId の値と petId の値は、メソッドのパラメータにバインドされます。 メソッドのパラメータ名が、バインドする必要がある URI テンプレート内の変数名と一致しない場合は、 @PathVariable("name") で URI テンプレート内の名前を指定する必要があります。Spring 4.2 の新機能 - @Order を使用して構成クラスのロード順序を調整します
-------------- ---- ----------------------------------
lombok は Java コードの理解を簡素化しますannotationslombok annotations: lombok には多くのアノテーションがありませんが、公式のビデオ説明や公式ドキュメントを参照することができます。 Lombok アノテーションのオンライン ヘルプ ドキュメント: http://projectlombok.org/features/index.一般的に使用される Lombok アノテーションをいくつか示します: @Data: Annotation On theクラス; クラスのすべてのプロパティの取得および設定メソッドを提供します。さらに、equals、canEqual、hashCode、および toString メソッドも提供します @Setter: プロパティに注釈が付けられます。プロパティ @Getter: 属性に注釈が付けられ、属性の取得メソッドを提供します @Log4j: クラスに注釈が付けられ、クラスの log という名前の属性を持つ log4j ログ オブジェクトを提供します @NoArgsConstructor: クラスにアノテーションを付けます。クラスにパラメーターなしのコンストラクターを提供します。 @AllArgsConstructor: クラスにアノテーションを付けます。クラスにフルパラメーターのコンストラクターを提供します======== ==========================以上が春の注釈は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。