JAVA中Beans与Utils哪个更好
发表于:2025-12-01 作者:千家信息网编辑
千家信息网最后更新 2025年12月01日,这篇文章主要讲解了"JAVA中Beans与Utils哪个更好",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"JAVA中Beans与Utils哪个更好"吧
千家信息网最后更新 2025年12月01日JAVA中Beans与Utils哪个更好
这篇文章主要讲解了"JAVA中Beans与Utils哪个更好",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"JAVA中Beans与Utils哪个更好"吧!
1.apache BeanUtils 性能太差 日志太多
2.Apache PropertyUtils 性能可以参考,但是数据量大了比起Cglib 还是慢很多
3.Spring BeanUtils 上了一定的数量级别比较慢
4.Cglib BeanCopier 目前看来比较稳定
5.com.rits.cloning ,数量级别大了 也慢
package com.helloxin.restful.api;import com.helloxin.restful.api.bo.CarBO;import com.rits.cloning.Cloner;import lombok.extern.slf4j.Slf4j;import net.sf.cglib.beans.BeanCopier;import org.apache.commons.beanutils.PropertyUtils;import org.junit.Test;import org.springframework.beans.BeanUtils;import java.lang.reflect.InvocationTargetException;import java.util.List;import java.util.stream.Collectors;import java.util.stream.IntStream;@Slf4jpublic class BeanCopyTest { final static public Integer NUM = 10000; @Test public void beanSpringCopyTest() { List list = createData(NUM); long start = System.currentTimeMillis(); for(int i = 0;i< NUM;i++){ CarBO newCar = new CarBO(); BeanUtils.copyProperties(list.get(i), newCar); } log.info("duration={}", System.currentTimeMillis() - start); } @Test public void beanCglibCopyTest() { List list = createData(NUM); long start = System.currentTimeMillis(); BeanCopier b = BeanCopier.create(CarBO.class, CarBO.class, false); for(int i = 0;i< NUM;i++){ CarBO newCar = new CarBO(); b.copy(list.get(i), newCar, null); } log.info("duration={}", System.currentTimeMillis() - start); } @Test public void beanApacheCopyTest() throws InvocationTargetException, IllegalAccessException { List list = createData(NUM); long start = System.currentTimeMillis(); BeanCopier b = BeanCopier.create(CarBO.class, CarBO.class, false); for(int i = 0;i< NUM;i++){ CarBO newCar = new CarBO(); org.apache.commons.beanutils.BeanUtils.copyProperties(newCar,list.get(i)); } log.info("duration={}", System.currentTimeMillis() - start); } @Test public void beanApachePropertyUtilsCopyTest() throws InvocationTargetException, IllegalAccessException, NoSuchMethodException { List list = createData(NUM); long start = System.currentTimeMillis(); BeanCopier b = BeanCopier.create(CarBO.class, CarBO.class, false); for(int i = 0;i< NUM;i++){ CarBO newCar = new CarBO(); PropertyUtils.copyProperties(newCar,list.get(i)); } log.info("duration={}", System.currentTimeMillis() - start); } @Test public void beanRitsCloningTest() throws InvocationTargetException, IllegalAccessException, NoSuchMethodException { List list = createData(NUM); long start = System.currentTimeMillis(); Cloner cloner = new Cloner(); for(int i = 0;i< NUM;i++){ cloner.deepClone(list.get(i)); } log.info("duration={}", System.currentTimeMillis() - start); } private CarBO createData() { return CarBO.builder().make("st").numberOfSeats(12).build(); } private List createData(int num) { return IntStream.range(0, num).mapToObj(i -> CarBO.builder().make("st").numberOfSeats(i).build()).collect(Collectors.toList()); }} 感谢各位的阅读,以上就是"JAVA中Beans与Utils哪个更好"的内容了,经过本文的学习后,相信大家对JAVA中Beans与Utils哪个更好这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!
学习
内容
性能
数量
级别
就是
思路
情况
数据
文章
日志
更多
知识
知识点
篇文章
跟着
还是
问题
参考
实践
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
淮安云服务器工厂
公司监控服务器怎么联网
服务器安全防护报告
开源软件开发的行业须知
网络安全征文1200字
查询数据库中有哪些存储过程
网络安全技术和工具综述
网络安全yara规则
奇迹数据库目录
技校软件开发6
软件开发寻找客户
黄河科技学院互联网
sqlyog 数据库 删
Ss服务器推荐
抢红包系统软件开发
xps适合软件开发么
swing窗口修改数据库
网络安全边界设备有哪些品牌
山东服务器机房
广州鲜京网络技术
高中网络技术中填充怎么做
服务器管理口如何远程
软件开发方法中
博技app软件开发
天津服务器搬迁怎么选服务器
wind企业并购数据库
深圳掌柜互联网科技有限公司
手机使用单位无线网络安全吗
网络安全应急响
惠普服务器计时芯片