dozer转化对象
依赖:
commons-beanutils-1.9.3.jar、commons-lang-2.6.jar、dozer-5.3.2.jar、jcl-over-slf4j-1.7.25.jar、slf4j-api-1.7.25.jar
<dependency>
<groupId>net.sf.dozer</groupId>
<artifactId>dozer</artifactId>
<version>5.4.0</version>
</dependency>
使用:
1、直接转化
private static Mapper mapper = new DozerBeanMapper(); public static <T> T transfor(Class<T> target, Object source) {
if(source == null) {
return null;
}
return mapper.map(source, target);
} public static <T> List<T> transforList(Class<T> clazz, List<T> sources) {
List<T> list = new ArrayList<>();
for (Object o : sources) {
T t = transfor(clazz, o);
list.add(t);
}
return list;
}
2、根据xml转化
DozerBeanMapper mapper = new DozerBeanMapper();
List myMappingFiles = new ArrayList();
myMappingFiles.add("people-person-mapper.xml");
mapper.setMappingFiles(myMappingFiles);
Person p1 = new Person();
p1.setId(1);
p1.setName("aa");
People p2 = mapper.map(p1, People.class); <?xml version="1.0" encoding="UTF-8"?>
<mappings xmlns="http://dozer.sourceforge.net" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://dozer.sourceforge.net
http://dozer.sourceforge.net/schema/beanmapping.xsd">
<mapping>
<class-a>dozer.People</class-a>
<class-b>dozer.Person</class-b>
<field>
<a>id</a>
<b>id</b>
</field>
<field>
<a>name</a>
<b>name</b>
</field>
</mapping>
</mappings>
dozer转化对象的更多相关文章
- Dozer数据对象转换神器
Dozer数据对象转换神器
- Struts2 OGNL 字符串自定义转化对象细节
要使用Struts2的自定义对象转化,需要几个要点: 1.要有继承DefaultTypeConverter的实现类,要重写convertValue,并且参数value转化而来的String是Strin ...
- Dozer 实现对象间属性复制
使用场景:两个领域之间对象转换. 比如:在系统分层解耦过程中, 对外facade接口,一般使用VO对象,而内core业务逻辑层或者数据层通常使用Entity实体. VO对象 package com.m ...
- 用eval转化对象
var str = '{"name": "tom","age": 12,"sex": "man"}' ...
- 转化对象为map方法
言语不多,直接上代码. private Map<String, Object> introspect(Object obj) throws Exception { Map<Strin ...
- 对象转换利器之Dozer
什么是Dozer Dozer是一个Java对象转换工具,可以在JavaBean和JavaBean之间进行递归数据复制,并且适应不同复杂的类型.Dozer会直接将名称相同的属性进行复制,属性名不同或者有 ...
- js在前端json字符串和对象互相转化
js在前端json字符串和对象互相转化 //对象转json串 注意:参数必须是对象,数组不起作用,对象格式{'0'=>'a'} JSON.stringify( arr ); //json字符串转 ...
- jackson java对象和json对象的互相转换
概述 Jackson框架是基于Java平台的一套数据处理工具,被称为“最好的Java Json解析器”. Jackson框架包含了3个核心库:streaming,databind,annotation ...
- JavaBean递归拷贝工具类Dozer
JavaBean深度拷贝利器——Dozer DozerBeanMapper对象之间相同属性名赋值 DozerBeanMapper + 对象转Map方法 Dozer(JavaBean的映射工具)开发手册
随机推荐
- Shell脚本快速查看网段内ip占用情况和可用ip
思想就是整个网段ping一遍,对于ping不通的,解析其失败的字符来判定 #!/bin/bash head_add=${} address=${head_add%.*} echo address=$a ...
- python __file__ is not defined 解决方法
python __file__ is not defined 解决方法 __file__ 是在python module 被导入的时候生成的一个变量,所以在 __file__ 不能被使用,但是又想获取 ...
- Mariadb多实例启动脚本
#!/bin/bash port=3306 mysql_user="root" mysql_pwd="centos" cmd_path="/app/m ...
- BZOJ2140 稳定婚姻[强连通分量]
发现如果$B_i$和$G_j$配对,那么$B_j$又要找一个$G_k$配对,$B_k$又要找一个$G_l$配对,一直到某一个$B_x$和$G_i$配对上为止,才是不稳定的. 暴力是二分图匹配.匈牙利算 ...
- 一个restframework快速实例
首先在settings.py中引入 INSTALLED_APPS = [ ...... 'rest_framework', ......] 相关模型结构如下: class custume(models ...
- .net System.Net.Mail 之用SmtpClient发送邮件Demo
private static bool sendMail() { try { //接收人邮箱 string SendTo = "XXXXX@163.com ...
- Luogu P4781【模板】拉格朗日插值
洛谷传送门 板题-注意一下求多个数的乘积的逆元不要一个个快速幂求逆元,那样很慢,时间复杂度就是O(n2log)O(n^2log)O(n2log).直接先乘起来最后求一次逆元就行了.时间复杂度为O(nl ...
- Redis:RedisHelper(5)
/// <summary> /// Redis 助手 /// </summary> public class RedisHelper { /// <summary> ...
- Android: samil语法指令集-基于dex文件结构的寄存器虚拟机
Smali文件结构解 Smali文件与java中的类是一一对应的,包括内部类和匿名内部类也会生成对应的smali文件(典型的比如实现某个接口的匿名内部类),所以你会看到.smali文件比.java ...
- MFC 类内线程函数
线程函数必须是全局函数或静态成员函数. 非静态成员函数都有一个隐含的参数用于接收所属类的this指针,一般情况下调用时参数不匹配.所以static可以干掉隐含的参数. 但是没有了this,类内的函数就 ...