0

あるオブジェクトのコンテンツを別のクラス/ターゲット タイプの新しいオブジェクトにコピーする簡単な方法はありますか。オブジェクトは、少なくとも 1 つのスーパークラスと多くのプロパティ/属性を共有します。

このアプローチを別のターゲット クラスで使用しました: https://stackoverflow.com/a/3899882/1949775。例外は発生しませんが、どういうわけか、結果として間違ったターゲットタイプを取得します...

私が探しているのは、1 つのオブジェクトのコンテンツを、ソースとは異なるターゲット タイプの新しいインスタンスにシャベルする簡単な方法です。

ご協力いただきありがとうございます。

4

1 に答える 1

2

Apache commons-beanutils を試すことができます

BeanUtils.copyProperties(ソース、ターゲット);

API

指定されたソース Bean のプロパティ値をターゲット Bean にコピーします。

注: ソース クラスとターゲット クラスは、プロパティが一致する限り、一致する必要はなく、相互に派生する必要さえありません。ソース Bean が公開するがターゲット Bean が公開しない Bean プロパティは、黙って無視されます。

これは単なる便利な方法です。より複雑な転送が必要な場合は、完全な BeanWrapper の使用を検討してください。

于 2013-02-05T18:56:34.573 に答える