S2BeanUtilsでエンティティをBeanMapなどにプロパティのコピーができます。
どのプロパティをコピーに含めるか、含めないかの制御も行えます。
たとえば、コピーに含める場合は以下です。この場合だとempNameとdeptNameというプロパティだけがsrcからdstにコピーされます。
BeanMap bm = Beans.copy(src, dst).includes("empName","deptName").execute();
これをタイプセーフで書けたらいいなと思い、S2JDBC-Genが吐き出したNamesクラス(エンティティのプロパティ名を保持しているクラス)使ってみました。
S2.4.30では以下のような書き方ができます。タイプセーフになりますが元の文字列より長くてちょっとウザイw
BeanMap bm = Beans.copy(src, dst).includes(empName().toString(),deptName().toString()).execute();
うんで、seasar-devで相談したところ小林さんから「いいですね.お願いします.」をゲットしたのでwww、ここは自重せずに https://www.seasar.org/issues/browse/CONTAINER-294 を私のほうで対応させてもらいました。
ということで、地味ですがS2.4.31から以下のようにS2JDBC同様にキレイにプロパティ名を記述できるようになります!(converter系のメソッドも同様に対応したので使えるはずです)
BeanMap bm = Beans.copy(src, dst).includes(empName(),deptName()).execute();