オブジェクトプロパティをコピーする 3 つのメソッド:
1. Apache が提供する BeanUtil.copyProperties と PropertyUtil.copyProperties(
"Converted class","Class to be Converter");型変換は、PropertyUtils よりも効率がさらに劣ります
PropertyUtils.copyProperties("Converted class", "Class to be Converter");
ヒント: 後で支払う お金 (支払い前:後者は前にコピーされます) は例外をスローします2. spring
によって提供されるBeanUtil.copyPropertiesメソッド(
"変換されるクラス","変換されたクラス")
Apache パラメータの順序を逆にする 3. cglib が提供するコピーメソッド
BeanCopier copy=BeanCopier.create("変換されるクラス"
, "変換されたクラス", false ; クラス ", false);
copy.copy(from, to, null);
1 /**2 * Created by hunt on 2017/6/28.3 */4 @Data5 public class TestFrom {6 private String name;7 }
コードを表示
1 import lombok.Data;2 3 /**4 * Created by hunt on 2017/6/28.5 */6 @Data7 public class TestTo {8 private String name;9 }


1 import org.apache.commons.beanutils.BeanUtils; 2 3 import java.lang.reflect.InvocationTargetException; 4 5 /** 6 * Created by hunt on 2017/6/28. 7 */ 8 public class TestDemo { 9 public static void main(String[] args) throws InvocationTargetException, IllegalAccessException {10 TestFrom testFrom = new TestFrom();11 testFrom.setName("hunt");12 TestTo testTo = new TestTo();13 long begin = System.currentTimeMillis();14 for (int i = 0; i <div class="cnblogs_code"> <img class="code_img_closed lazy" src="/static/imghwm/default1.png" data-src="https://img.php.cn/upload/article/000/000/001/844fe4c2945742be3634bad9d562a21a-2.gif?x-oss-process=image/resize,p_40" id="code_img_closed_864006ca-a491-403a-b073-e04934aa2a68" alt="">コードの表示<img class="code_img_opened lazy" src="/static/imghwm/default1.png" data-src="https://img.php.cn/upload/article/000/000/001/844fe4c2945742be3634bad9d562a21a-3.gif?x-oss-process=image/resize,p_40" id="code_img_opened_864006ca-a491-403a-b073-e04934aa2a68" alt=""><div class="cnblogs_code_hide"></div> <span class="cnblogs_code_collapse"></span> </div> PropertyUtils 効率テストの最初の Apache 方法: <p></p><div class="cnblogs_code"> <img class="code_img_closed lazy" src="/static/imghwm/default1.png" data-src="https://img.php.cn/upload/article/000/000/001/844fe4c2945742be3634bad9d562a21a-4.gif?x-oss-process=image/resize,p_40" id="code_img_closed_fb866e61-a94a-42a3-9260-e47506e17ff4" alt=""><img class="code_img_opened lazy" src="/static/imghwm/default1.png" data-src="https://img.php.cn/upload/article/000/000/001/844fe4c2945742be3634bad9d562a21a-5.gif?x-oss-process=image/resize,p_40" id="code_img_opened_fb866e61-a94a-42a3-9260-e47506e17ff4" alt=""><pre class="brush:php;toolbar:false"> 1 import org.apache.commons.beanutils.PropertyUtils; 2 3 import java.lang.reflect.InvocationTargetException; 4 5 /** 6 * Created by hunt on 2017/6/28. 7 */ 8 public class TestDemo { 9 public static void main(String[] args) throws IllegalAccessException, NoSuchMethodException, InvocationTargetException {10 TestFrom testFrom = new TestFrom();11 testFrom.setName("hunt");12 TestTo testTo = new TestTo();13 long begin = System.currentTimeMillis();14 for (int i = 0; i <div class="cnblogs_code_hide"></div> コードの表示<span class="cnblogs_code_collapse"></span>


1 import org.springframework.beans.BeanUtils; 2 3 /** 4 * Created by hunt on 2017/6/28. 5 */ 6 public class TestDemo { 7 public static void main(String[] args) { 8 TestFrom testFrom = new TestFrom(); 9 testFrom.setName("hunt");10 TestTo testTo = new TestTo();11 long begin = System.currentTimeMillis();12 for (int i = 0; i <div class="cnblogs_code_hide"></div>コードを表示<span class="cnblogs_code_collapse"></span><p><img src="/static/imghwm/default1.png" data-src="https://img.php.cn/upload/article/000/000/001/ed3b8b12748b6202f22d909ee69fc9d4-12.png?x-oss-process=image/resize,p_40" class="lazy" alt=""></p><p>第三种方式cglib的copy效率测试</p><div class="cnblogs_code"> <img class="code_img_closed lazy" src="/static/imghwm/default1.png" data-src="https://img.php.cn/upload/article/000/000/001/ed3b8b12748b6202f22d909ee69fc9d4-13.gif?x-oss-process=image/resize,p_40" id="code_img_closed_1e44eb70-fcb4-4fd7-9e6e-361937be1f4f" alt=""><img class="code_img_opened lazy" src="/static/imghwm/default1.png" data-src="https://img.php.cn/upload/article/000/000/001/a876777311618872c2968afb1fdb9f40-14.gif?x-oss-process=image/resize,p_40" id="code_img_opened_1e44eb70-fcb4-4fd7-9e6e-361937be1f4f" alt=""><div class="cnblogs_code_hide"><pre class="brush:php;toolbar:false"> 1 import net.sf.cglib.beans.BeanCopier; 2 3 /** 4 * Created by hunt on 2017/6/28. 5 */ 6 public class TestDemo { 7 public static void main(String[] args) { 8 TestFrom testFrom = new TestFrom(); 9 testFrom.setName("hunt");10 TestTo testTo = new TestTo();11 long begin = System.currentTimeMillis();12 for (int i = 0; i
第四种方式Spring的copy效率测试


1 import org.springframework.cglib.beans.BeanCopier; 2 3 /** 4 * Created by hunt on 2017/6/28. 5 */ 6 public class TestDemo { 7 public static void main(String[] args) { 8 TestFrom testFrom = new TestFrom(); 9 testFrom.setName("hunt");10 TestTo testTo = new TestTo();11 long begin = System.currentTimeMillis();12 for (int i = 0; i
总结:这四种方式的效率是由低到高。(注意Apache的PropertyUtils不能进行类型转换的问题)
以上がオブジェクト属性をコピーする 3 つの方法の詳細な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

この記事では、Javaプロジェクト管理、自動化の構築、依存関係の解像度にMavenとGradleを使用して、アプローチと最適化戦略を比較して説明します。

この記事では、MavenやGradleなどのツールを使用して、適切なバージョン化と依存関係管理を使用して、カスタムJavaライブラリ(JARファイル)の作成と使用について説明します。

この記事では、カフェインとグアバキャッシュを使用してJavaでマルチレベルキャッシュを実装してアプリケーションのパフォーマンスを向上させています。セットアップ、統合、パフォーマンスの利点をカバーし、構成と立ち退きポリシー管理Best Pra

この記事では、キャッシュや怠zyなロードなどの高度な機能を備えたオブジェクトリレーショナルマッピングにJPAを使用することについて説明します。潜在的な落とし穴を強調しながら、パフォーマンスを最適化するためのセットアップ、エンティティマッピング、およびベストプラクティスをカバーしています。[159文字]

Javaのクラスロードには、ブートストラップ、拡張機能、およびアプリケーションクラスローダーを備えた階層システムを使用して、クラスの読み込み、リンク、および初期化が含まれます。親の委任モデルは、コアクラスが最初にロードされ、カスタムクラスのLOAに影響を与えることを保証します

この記事では、分散アプリケーションを構築するためのJavaのリモートメソッドの呼び出し(RMI)について説明します。 インターフェイスの定義、実装、レジストリのセットアップ、およびクライアント側の呼び出しを詳述し、ネットワークの問題やセキュリティなどの課題に対処します。

この記事では、ネットワーク通信のためのJavaのソケットAPI、クライアントサーバーのセットアップ、データ処理、リソース管理、エラー処理、セキュリティなどの重要な考慮事項をカバーしています。 また、パフォーマンスの最適化手法も調査します

この記事では、カスタムJavaネットワーキングプロトコルの作成を詳述しています。 プロトコルの定義(データ構造、フレーミング、エラー処理、バージョン化)、実装(ソケットを使用)、データシリアル化、およびベストプラクティス(効率、セキュリティ、メンテナ


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

AtomエディタMac版ダウンロード
最も人気のあるオープンソースエディター

mPDF
mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

MantisBT
Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

Dreamweaver Mac版
ビジュアル Web 開発ツール

メモ帳++7.3.1
使いやすく無料のコードエディター
