Javaにおけるリフレクションとアノテーションの活用
リフレクションの基礎
クラス情報の取得には主に以下の3つの手法がある。
public class ReflectionTest {
public void setup() {
// テスト前処理
}
public void demonstrateClassRetrieval() throws ClassNotFoundException {
// 文字列からクラス情報を取得 - 設定ファイル読み込みに適す
Class<?> clazz1 = Class.forName(& ...
7月1日 16:15 投稿
Springフルアノテーション開発ガイド
アノテーション駆動の意義と落とし穴
アノテーション駆動とは、XML の冗長な記述を Java のメタデータで置き換える手法である。設定ファイルが消滅し、IDE の補完やリファクタリング恩恵を受けられる一方、次のようなトレードオフもある。
単純な定義ほどコードが膨張しがち
外部ライブラリの Bean を登録する際、ソース修正ができないため専用のファクトリメソッドが必要 ...
6月28日 18:26 投稿
Javaリフレクションの基本と実践
Javaのリフレクション(Reflection)は、実行時にクラスやオブジェクトに関する情報を動的に取得・操作するための強力な機能です。これにより、コンパイル時には不明なクラスに対しても、そのフィールドやメソッドにアクセスしたり、インスタンスを生成したりできます。
Classオブジェクトの取得方法
リフレクションの中心となるのはjava.lang.Classクラスです。各クラス ...
6月13日 23:04 投稿
SpringアノテーションによるBean管理と依存注入の実践
@Component系アノテーションでBeanを定義する
@Component("dataAccessor")
public class DataAccessorImpl implements DataAccessor {}
@Service
public class BusinessServiceImpl implements BusinessService {}
設定ファイルでは、コンポーネントスキャンによりパッケージ内のBeanを自動検出します:
<context:component-scan base-package="com.example" />
...
5月22日 20:36 投稿