S2Framework単体をリフレクションユーティリティとして使う

S2Containerを抜きにして、S2Framework単体をリフレクション用途に使う手も全然ありなんですよね。

クラスのメタデータを取得する場合、Java標準のIntrospector.getBeanInfo()の代替としてBeanDescとPropertyDescが非常に便利です。getter/setterの無いpublicフィールドも取ってきてくれるし、インスタンスに対して値の入出力もメソッド一発でできるし。

それから、ClassUtilとかFieldUtilは、リフレクションを扱う上で面倒臭いことこの上ないチェック例外を非チェック例外に変換してくれるので地味に便利。

今までS2の内部をあまり見たことがなかったので知らなかったんですが、これからはガンガン使っていこうと思います。