微服务应用大行其道,我提供一个dto和entity转换工具类,方便大家做转换,少写机械代码,多陪陪家人...
微服务应用大行其道,我提供一个dto和entity转换工具类,方便大家做转换,少写机械代码,多陪陪家人。
该工具类主要是对dozer进行了封装,使用过程代码量极少,废话少说,贴代码了
import java.util.ArrayList;
import java.util.List;
import org.dozer.DozerBeanMapper;
import org.dozer.Mapper;
public class DtoEntityUtil {
static Mapper mapper = new DozerBeanMapper();
public static <D,E> E trans(D t,Class<E> clazz){
if(t == null)
return null;
return mapper.map(t, clazz);
}
public static <D,E> List<E> trans(D[] ts,Class<E> clazz){
List<E> es = new ArrayList<E>();
if(ts == null)
return es;
for(D d:ts) {
E e = (E)trans(d,clazz);
if(e != null)
es.add(e);
}
return es;
}
public static <D,E> List<E> trans(List<D> ts,Class<E> clazz){
List<E> es = new ArrayList<E>();
if(ts == null )
return es;
for(D d:ts) {
E e = (E)trans(d,clazz);
if(e != null)
es.add(e);
}
return es;
}
}
举例:
//下面两段代码是将entity转换成dto;分别是单个对象转换和集合对象转换;一般用于向consumer提供数据
//WorkeRecord是entity,从数据库中获取的对象
DtoEntityUtil.trans(workeRecord, WorkerRecordDTO.class);
//es是List集合,里面的对象是WorkeRecord的实例
List<WorkerRecordDTO> ds = (List<WorkerRecordDTO>)DtoEntityUtil.trans(es, WorkerRecordDTO.class);
//================华丽分隔符==================
//下面例子是dto转entity,一般用于向provider传入对象
DtoEntityUtil.trans(menuDto, Menu.class);//将mentDto转换成mentEntity
List<User> users = DtoEntityUtil.trans(ts, User.class);//将dto集合ts转换成entityList users
代码量是不是很少~~~
转载于:https://my.oschina.net/godson2003/blog/3102151
微服务应用大行其道,我提供一个dto和entity转换工具类,方便大家做转换,少写机械代码,多陪陪家人...相关推荐
- 微服务应用大行其道,我提供一个dto和entity转换工具类,方便大家做转换,少写机械代码,多陪陪家人
微服务应用大行其道,我提供一个dto和entity转换工具类,方便大家做转换,少写机械代码,多陪陪家人. 该工具类主要是对dozer进行了封装,使用过程代码量极少,废话少说,贴代码了 import j ...
- redis 什么是冷数据_阿里Java三面凉凉:微服务,Redis,JVM一个都搞不懂
前言: 金九银十刚刚过去了,不知道很多小伙伴都拿到自己心仪的offer没有,我这边也收到了一个粉丝投来的消息,说看到阿里的面试真题之后人都是懵的,发现自己一窍不通,下面给大家分享我这个粉丝的经历,以及 ...
- 联发科heli p90_“如果您是Java开发人员并且正在编写微服务,那么Helidon是一个不错的选择”
联发科heli p90 " Helidon仅设计用于微服务" 尽管Oracle最近开放了 Helidon(一组Java库)的开源资源 ,但是该项目本身并不新鲜,正如Helidon项 ...
- SpringCloud(第 016 篇)电影微服务,定制Feign,一个Feign功能禁用Hystrix,另一个Feign功能启用Hystrix...
2019独角兽企业重金招聘Python工程师标准>>> SpringCloud(第 016 篇)电影微服务,定制Feign,一个Feign功能禁用Hystrix,另一个Feign功能 ...
- java图片缩放工具类,一个JAVA图形缩放处置工具类
一个JAVA图形缩放处理工具类 调用的例子 import java.io.FileOutputStream; import java.io.IOException; import javax.imag ...
- 基于Dapper二次封装了一个易用的ORM工具类:SqlDapperUtil
基于Dapper二次封装了一个易用的ORM工具类:SqlDapperUtil,把日常能用到的各种CRUD都进行了简化封装,让普通程序员只需关注业务即可,因为非常简单,故直接贴源代码,大家若需使用可以直 ...
- java dto 转换_json dto javabean转换工具类
[java]代码库package com.slb.webservice.servlet; import java.io.IOException; import java.util.ArrayList; ...
- 分享一个发送http请求的工具类
分享一个发送http请求的工具类 maven依赖只需要导入一个 <dependencies><dependency><groupId>commons-httpcli ...
- 微服务设计简单实践---从一个简单需求学习微服务思想
从一个案例来看,如何在做架构设计时利用微服务的思想来帮我们解决问题. 背景介绍 公司对产品服务的管理目前还停留在物理机的那种理念,虽然阿里云.AWS.腾讯云.OpenStack等云平台用的不亦乐乎,但 ...
最新文章
- 5 用python进行OpenCV实战之图像变换2(旋转)
- 关于STM32的延时问题
- Rise of Shadows 闰年leap year-无法线性筛
- GDCM:gdcm::TransferSyntax的测试程序
- sharepoint简单说明
- 51Nod - 1183 编辑距离
- c语言不同类型变量用什么表示什么作用,C语言数据类型及变量整理
- Dubbo关于timeout等相关配置的优先级
- spring_redis整合
- Android Sqlite数据库操作
- mysql 元数据修改_MySQL 元数据
- 海量数据插入数据库的快速方案
- DEA for mac 热部署
- BarTender数据批量打印软件的入门操作
- 超级搜索术 总结篇2
- 基于Java毕业设计高考志愿智能辅助填报系统源码+系统+mysql+lw文档+部署软件
- 爬虫(二) 豆瓣音乐评论爬虫 文末附完整代码
- Python爬取《明日之子》(腾讯视频)评论和弹幕,看看大家都在吐槽什么
- 销售小姐姐再也不用担心写错合同编号了
- 如何实现接口统一入口_网易考拉Android App如何实现统一弹框