ホームページ  >  記事  >  Java  >  Javaでカスタムアノテーションを実装する方法

Javaでカスタムアノテーションを実装する方法

coldplay.xixi
coldplay.xixiオリジナル
2020-08-20 11:53:495382ブラウズ

Java でカスタム アノテーションを実装する方法: 最初に新しい Java ファイルを作成してアノテーションをカスタマイズし、次にメタ アノテーションを使用してさまざまな項目を定義し、最後にアノテーションのビジネス ロジックを定義します。

Javaでカスタムアノテーションを実装する方法

Java でカスタム アノテーションを実装する方法:

1. アノテーション (MyValidate) をカスタマイズし、要素を使用します。アノテーションはさまざまな用途を定義します

Javaでカスタムアノテーションを実装する方法

# 2. アノテーションのビジネス ロジックを定義します。ここではアノテーションの属性が 1 つだけ実装されています: isNotNull()

Javaでカスタムアノテーションを実装する方法

これで楽しく使用できます

Javaでカスタムアノテーションを実装する方法

実際のプロジェクトでは、インターセプタまたはアスペクトを通じて実装されます:

1. 定義します。 BaseCheck という名前のインターフェイス。BaseCheck には抽象チェック メソッドがあり、チェック メソッドの戻り値はブール値です。

2. @NotNull、@Length などの検証アノテーションを定義します。

3. 上記の注釈に従って、NotNullCheck、LengthCheck などの対応する検証クラスを定義します。

4. NotNullCheck と LengthCheck はどちらも BaseCheck のチェックメソッドを実装する必要があり、チェックメソッド内に検証処理を記述する必要があります。

5. コンテナを定義し、プロジェクト開始時に NotNullCheck と LengthCheck のオブジェクトをコンテナに配置します。

Spring を使用する場合は、NotNullCheck と LengthCheck に直接 @Component アノテーションを追加します。も同様の効果が得られます。

6. インターセプターまたはアスペクトを定義します。

7. このインターセプターまたはアスペクトでは、ユーザー オブジェクトであるリクエスト パラメーターを取得します。

8. リフレクションにより、ユーザー オブジェクトに対応するクラスを取得します (クラス名は User でなければなりません)。

9. User のすべてのフィールドを調べて、各フィールドに注釈が含まれているかどうかを確認します。

10. フィールド上のすべての注釈をスキャンします。

11. アノテーション @NotNull が見つかった場合は、対応するチェック クラス、

BaseCheckbaseCheck =container.get("NotNullCheck")

または BaseCheckbaseCheck = を探します。 (BaseCheck) SpringUtl.getBean("NotNullCheck")

12. 見つかった場合、つまり、baseCheck が空でない場合は、リフレクションを通じてこのフィールドの実際の値を取得し、この値をパラメータとして使用し、baseCheck を呼び出します。 .check メソッド

13 では、baseCheck.check は false を返した場合にエラーを報告し、すべてのフィールドとすべての注釈が走査されるまで続行します。

関連する学習の推奨事項:

java 基本チュートリアル

以上がJavaでカスタムアノテーションを実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。