Bean 对象复制 有 2 个工具类
BeanUtils.copyProperties(dest, orig); 和
PropertyUtils.copyProperties( dest, orig );
前者速度快 但是遇到 date 属性会报错 后者速度慢 可以解析 date
请问 你会选择使用后者 还是 在 try 进行一次补偿操作?
附代码
private static Logger log = LoggerFactory.getLogger( EntityCopyUtils.class );
/**
* 复制同名属性,并返回目标对象
*/
public static <T> T copy(T dest, Object orig) {
try {
BeanUtils.copyProperties(dest, orig);
} catch ( Exception e ) {
try {
PropertyUtils.copyProperties( dest, orig );
} catch( Exception e1 ) {
log.error("属性复制失败,请检查类" + dest.getClass().getName() + "和" + orig.getClass().getName() + "的属性!", e);
}
}
return dest;
}
try catch 真的会对性能有很大影响, 你会如何选择?
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于