Javaアノテーション機能 概要
2009/02/12 13:06Update
TAGS: Java | アノテーション | annotation | @Deprecated | @Override | @SuppressWarnings | @Target | @Retention | RetentionPolicy
Javaアノテーションとは、Java標準アノテーションおよびその使い方、独自のJavaアノテーション定義の基本的な実装方法などを学びます。
アノテーション概要
Java標準アノテーション、およびその使い方
独自のJavaアノテーション定義方法Javaアノテーション概要
■Javaアノテーションとは
JDK1.5からアノテーション(注釈)という機能がJava言語に追加されました。では、Javaアノテーションとは何の機能でしょうか。
まず、Javaアノテーションの特徴から説明したいと思います。
Javaアノテーションの特徴?
1)Javaアノテーションは注釈。Javaアノテーションはその名の通り、注釈です。クラスやメソッドなどに付与された関連情報(メタデータ)のことです。通常の場合、ソースにはビジネスロジックを書きますが、ビジネスロジック以外のものを書きたい場合、Javaアノテーションを用います。
※とは言っても、ソースに書くJavadocようなものではありません。
2)Javaアノテーションは付加情報。なので、あってもなくてもソースに書かれたビジネスロジック(プログラムの動作)に影響を与えません。
3)package, class, method, fieldなどに付加可能。
4)コンパイルされたclassファイル内にもアノテーションが残る。
■なぜJavaアノテーションを書く?
5)Javaソースに表現できない情報を提供したい場合
6)外部ツールはアノテーションを解釈する必要がある場合。
ORMツールHibernateの場合、XMLファイル(*.hbm.xml)を利用して、テーブルとJavaクラスをマッピングさせる方法があります。
しかし、この方法だと、テーブルの定義とその関連するJavaクラスのほかに、マッピング情報の持つXMLも書かざるを得ません。
余計なXMLを書きたくない、もうちょっと簡単な方法はないのか?
答えは、Javaアノテーションを利用します。
マッピング情報をJavaクラスに書いておけば、XMLに定義する必要がなくなるわけです。
Javaアノテーションを利用したJavaライブラリ・フレームワーク例:
javac
Hibernate EntityManager
JAXB
EJB3コンテナーなどがあります。
Sponsored Link
- Relative Articles
- Java開発及び実行環境の構築 | Linux篇 - (2008/08/31 20:34)
- Java開発及び実行環境の構築 | Windows篇 - (2008/08/31 21:18)
- 5分でJava Hello World! - (2008/08/31 22:13)
- Java言語の制御構文 - 条件分岐if/else/else if - (2008/10/01 21:30)
- Java言語の繰り返し制御構文 - for文 - (2008/10/03 18:22)
- Java言語の繰り返し制御構文 - do ... while文 - (2008/10/03 21:23)
- Java言語の繰り返し制御構文 - while文 - (2008/10/03 21:32)
- Java言語の基礎 - javacコマンドによるコンパイル - (2008/10/10 17:58)
- Java アクセス修飾子概要 - (2008/10/29 18:31)
- Method.invoke - Javaメソッドの動的に実行 - (2009/02/13 11:59)