[Seasar-dev:239] [S2Container] ToStringInterceptorコミットのお願い

江里口 温 on-eri
2006年 1月 11日 (水) 22:21:17 JST


To:小林さん

 江里口@SMGです。

 ToStringInterceptorができましたので、リポジトリにコミットして
 いただけないでしょうか。

 # 小林さんのアドバイスどおり、リフレクションバリバリです(^^

■添付ファイルについて
・ToStringInterceptor.zip
 ToStringのソースコードです。
 https://www.seasar.org/svn/s2container/trunk/seasar2
 配下へのコミットをお願いします。

■使い方
1.Dicon定義
     以下の通りです。
	<component name="toStringInterceptor" 
		class="org.seasar.framework.aop.interceptors.ToStringInterceptor"/>

2.toStringInterceptorの使い方
     他のInterceptorと同様です。
    例)
	<component class="examples.aop.tostringinterceptor.Entity">
		<aspect pointcut="toString">
			toStringInterceptor
		</aspect>
	</component>

3.toStringInterceptorの生成する文字列
     以下の様に、対象のクラスの全てのフィールドについて、
    フィールド名とそのString.valueOf()結果を出力します。
    ※ここでは見易さのために改行とTabを入れています。
	<対象となるオブジェクトのクラス名>@hashCode
		,<フィールド1名>=<String.valueOf(フィールド1)>
		,<フィールド2名>=<String.valueOf(フィールド2)>
		,<フィールド3名>=<String.valueOf(フィールド3)>
		・
		・
		・
    例)
	examples.aop.tostringinterceptor.Entity @ 126e85f
		,intValue=1,staticIntValue=12
		,doubleValue=12.3
		,stringValue=1234
		,staticFinalIntValue=12345
		,mapValue={}

 定数だとpublicだろうと全てのフィールドを出力していますが、定数やpublic
なフィールドについては出力不要な気もしています。
 その他でも、何かこうしたほうが良い、ということであれば、修正しますので、
よろしくお願いします。

 次はS2DaoにS2Containerからオブジェクトを生成する機能を実現して、
このMethodInterceptorをもっと有用なものにしたいと思います。

--
 江里口 温



seasar-dev メーリングリストの案内