Dozer-对象属性映射工具类

工具类代码:

import java.util.List;
import java.util.concurrent.CopyOnWriteArrayList; import org.dozer.DozerBeanMapper;
import org.dozer.Mapper; /**
* <pre>对象属性映射工具类</pre>
* @author lmw
*
*/
public class MapperUtil {
private static final Mapper mapper = new DozerBeanMapper(); /**
* <pre>映射一个对象的属性到另外一个对象</pre>
* @param obj 需要被映射属性的对象
* @param t 需要映射属性的对象类型,Class类型
* @return
*/
public static <T> T mapBean(Object obj, Class<T> t) {
if(null == obj)
return null;
return mapper.map(obj, t);
} /**
* <pre>映射一个List的属性到另外一个List</pre>
* @param objList 需要被映射属性的List
* @param t 需要映射属性的对象类型,Class类型
* @return
*/
public static <T> List<T> mapList(List<?> objList, Class<T> t) {
List<T> list = new CopyOnWriteArrayList<>();
if(null != objList && !objList.isEmpty()) {
for(Object o:objList) {
list.add(mapper.map(o, t));
}
}
return list;
}
}

需要导入maven依赖

<dependency>
<groupId>net.sf.dozer</groupId>
<artifactId>dozer</artifactId>
<version>5.5.1</version>
</dependency>

Dozer-对象属性映射工具类的更多相关文章

  1. 对象属性拷贝工具类大全==>Bean的属性拷贝从此不用愁

    大家在做java开发时,肯定会遇到api层参数对象传递给服务层,或者把service层的对象传递给dao层,他们之间又不是同一个类型对象,但字段又是一样,如果还是用普通的get.set方式来处理话,比 ...

  2. Touch 方法&属性 映射工具

    Touch 方法&属性 映射工具(0.5 版本) 标签 : github 线上后门与接口调试: 原先需要测试一个接口(如Dubbo.DAO), 或为线上留后门, 需要写大量的Web层(Api. ...

  3. java中map和对象互转工具类的实现示例

    在项目开发中,经常碰到map转实体对象或者对象转map的场景,工作中,很多时候我们可能比较喜欢使用第三方jar包的API对他们进行转化,而且用起来也还算方便,比如像fastJson就可以轻松实现map ...

  4. java读取属性配置文件工具类

    import java.io.IOException; import java.io.InputStream; import java.util.Properties; /** * * 类: ProU ...

  5. 编写实现连接oracle数据库并返回Connection对象的Java工具类

    只需要实现一个功能,所以只写一个方法,为了方便调用,设为静态方法 package com.jv; import java.sql.Connection; import java.sql.DriverM ...

  6. properties属性文件工具类

    package xxx.business.utils; import org.apache.commons.configuration.ConfigurationException; import o ...

  7. xml转对象,对象转xml工具类

    package com.dq.schooldomain.utils; import com.thoughtworks.xstream.XStream; import com.thoughtworks. ...

  8. 电商商品规则属性sku 工具类

    /** * 商品模块: * 使用:var SKU = sku.init({ id:'sku', item: item, data:data }); * @config item = [{"i ...

  9. Java 输出对象为字符串 工具类

    public static String reflectionToString(Object o){ if(o == null) return StringUtils.EMPTY; StringBui ...

随机推荐

  1. Java 多线程 -- 线程安全 双重检测(double checking)

    先看一个经典的12306案例: public class SynBlockTest { public static void main(String[] args) { // 一份资源 SynWeb1 ...

  2. 单线程下实现IO切换

    1.Greenlet greenlet可以实现两个任务之间的来回切换,但遇到IO会阻塞,不会切(使用这个模块之前需要在电脑命令提示符中输入 pip3 install greenlet 进行安装) 例如 ...

  3. Elasticsearch 集群部署

    本文部署环境 $ cat /etc/redhat-release CentOS Linux release (Core) 部署前系统优化 $ /etc/security/limits.conf roo ...

  4. Linux系统防火墙相关操作

    服务器重启后防火墙会自动开启,需要把防火墙关闭 以下为对防火墙进行的相关操作 查看防火墙状态 systemctl status firewalld service iptables status 暂时 ...

  5. PHP 新特性:如何善用接口与Trait

    首先! 接口也可以继承,通过使用 extends 操作符. 案例: <?php interface a { public function foo(); } interface b extend ...

  6. tp5命名空间补充

    1.非限定名称访问方式: 直接访问当前的空间和元素 2.限定名称命名空间: 路径\方法();  相当于相对路径 以当前的命名空间为起点,去找路径上的方法 3.完全限定名称访问方式:\路径\方法();  ...

  7. Linux 获取网卡名字列表

    lspci | egrep -i --color 'network|ethernet'

  8. 【shell】shell脚本入门

    1. 前言 1.1 为什么学习shell编程 Shell脚本语言是实现Linux/UNIX系统管理及自动化运维所必备的重要工具,Linux/UNIX系统的底层及基础应用软件的核心大部分涉及Shell脚 ...

  9. Ubuntu下访问Windows中Postgresql

    因为项目的原因,需要将Ubuntu中的一些信息记录到Windows中的Postgresql数据库中,查看网上信息,最后成功了,特地记录以下,需要以下步骤: (1)在Windows中Postgresql ...

  10. 用数据说话,R语言有哪七种可视化应用?

    今天,随着数据量的不断增加,数据可视化成为将数字变成可用的信息的一个重要方式.R语言提供了一系列的已有函数和可调用的库,通过建立可视化的方式进行数据的呈现.在使用技术的方式实现可视化之前,我们可以先和 ...