龙空技术网

Bean映射工具简单对比

参妙不可言 50

前言:

现在看官们对“javabean映射”大约比较注意,你们都想要知道一些“javabean映射”的相关内容。那么小编同时在网摘上搜集了一些对于“javabean映射””的相关资讯,希望同学们能喜欢,大家快快来学习一下吧!

1. BeanUtils

apache的BeanUtils和spring的BeanUtils 底层都是基于放射实现的Bean映射。而反射的性能是比较低的,因此BeanUtils的性能并不太理想。

2. BeanCopier

cglib的BeanCopier 直接使用ASM在字节码层面编写get/set 方法,然后生成class文件直接执行。由于没有使用反射,BeanCopier 的性能相对于BeanUtils有较大的提升。

3. Dozer

使用以上类库虽然可以不用手动编写get/set方法,但是他们都不能对不同名称的对象属性进行映射。在定制化的属性映射方面做得比较好的有Dozer,Dozer支持简单属性映射、复杂类型映射、双向映射、隐式映射以及递归映射。可使用xml或者注解进行映射的配置,支持自动类型转换,使用方便。但Dozer的底层仍然是基于反射做的,因此性能不太理想。

4. Orika

Orika底层采用了javassist类库生成Bean映射的字节码,之后直接加载执行生成的字节码文件,因此在速度上比使用反射进行赋值会快很多。且支持对不同名称的对象属性进行映射。

标签: #javabean映射