Java:あるBeanから別のBeanにプロパティをコピーする方法

公開: 2018-06-26

あるBeanから別のBeanにプロパティをコピーする方法

ほとんどのJava開発者は、プロパティのゲッターとセッターのJavaBeans命名パターンに準拠するJavaクラスを作成することに慣れています。 次に、対応するgetXxxメソッドとsetXxxメソッドの呼び出しを使用して、これらのメソッドに直接アクセスするのが自然です。

ただし、Javaオブジェクトのプロパティへの動的アクセス(呼び出されるプロパティのgetterおよびsetterメソッドのコンパイル済みの知識がない場合)が必要な場合があります。

ユースケースの例は次のとおりです。

  • Javaオブジェクトモデル(Bean Scripting Frameworkなど)と相互作用するスクリプト言語を構築します。
  • Webプレゼンテーションおよび同様の用途(JSPやVelocityなど)用のテンプレート言語プロセッサを構築します。
  • JSPおよびXSP環境(Apache Taglibs、Struts、Cocoonなど)用のカスタムタグライブラリを構築します。
  • XMLベースの構成リソース(Antビルドスクリプト、Webアプリケーションデプロイメント記述子、Tomcatのserver.xmlファイルなど)を消費します。

Jakarta Commons BeanUtils ライブラリは、JavaBeansを操作するためのさまざまな機能を備えています。 BeanUtilsの1.8.3バージョンは、 CommonsLogging libraryに依存しています。

さらに、このチュートリアルでは、Commons LangライブラリのToStringBuilderを使用して、この例のJavaBeansのプロパティを出力しました。

別の人は読む必要があります:

  • プログラムでJavaスレッドダンプを生成する方法
  • Javaでequals()およびhashcode()メソッドをオーバーライドする方法

これは、あるBeanから別のBeanにプロパティをコピーする方法を示す単純なJavaの例です。

CrunchifyBeanCopyExample.java

CrunchifyBeanCopyFrom.java

CrunchifyBeanCopyTo.java

出力:

Mavenの依存関係は次のとおりです。

Apache Common BeanutilsMavenの依存関係

Apache Commons LoggingMavenの依存関係