Fight the Future

Java言語とJVM、そしてJavaエコシステム全般にまつわること

BeanのListとDbUnitのDataSetを比較する方法を考える

DbUnitの弱点はBeanのListとDataSetを比較できないことから考えて、実際に比較する方法を考えようと思う。


方法は2つある。

  1. BeanのListをIDataSet実装オブジェクトに変換する
  2. DataSetから比較するBeanのListに変換する

2の方法だと、プリミティブなプロパティだけならいいけど、集約してるときとか変換するのが大変そう(あるBeanが違うBeanのListをプロパティとして持つなど)。


なので1の方法で考える。基本的にクラスのメタ情報を使えば変換できそうだ。
ただ、リフレクションだとパフォーマンスに悪影響を及ぼしそうなので、バイトコード操作ライブラリとかも考えた方がよさそう。