没有xml的简单对象到对象映射器?

时间:2013-10-22 11:37:53

标签: java mapping

我正在寻找一个没有XML配置的对象到对象映射器。应该可以将任何简单类型以及嵌套列表从一个对象转换为完全不同的对象。

像:

class IncomingDTO {
    String firstname;
    String lastname;
    List<Customer> customers;
}

class Customer {
    Address address;
}


class ResultDTO {
    String name; //should be a combination of firstname+lastname
    List<Address> addresses; //which might come from    
}

我正在寻找一种不迭代每个对象并手动复制每个条目的方法。也许有一个库,我可以提供某种映射配置,为我做其余的工作?

3 个答案:

答案 0 :(得分:2)

如果可能的话,我更愿意在Java代码中执行此操作。我不确定为什么当基于代码的解决方案更容易阅读和更具可扩展性时,拥有一些基于声明的解决方案会带来好处。

如果您需要一个框架来执行此操作,则可能使用Dozer。它提供了一种识别mappings using annotations(以及XML)

的方法

答案 1 :(得分:0)

你应该看看apache commons beanutils http://commons.apache.org/proper/commons-beanutils/

org.apache.commons.beanutils.BeanUtils

有方法可以帮助你

public static void copyProperties(Object dest, Object orig)

哪个

  

将属性值从原始bean复制到目标bean   所有属性名称相同的情况。

答案 2 :(得分:0)

看看Orika,

Orika是一个Java Bean映射框架,可以将数据从一个对象递归复制(以及其他功能)。在开发多层应用程序时它非常有用。

Orika on GitHub