首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用Dozer映射值对象

用Dozer映射值对象
EN

Stack Overflow用户
提问于 2011-03-21 06:06:52
回答 1查看 2.4K关注 0票数 5

我使用Dozer将我的DTO映射到JPA实体。

其中一个用例是,已经存在的实体的DTO表示到达了WS上,然后我使用JPA找到实体,并使用Dozer在上映射所发现的实体--使用映射(源、目标)方式(而不是映射(来源,destinationClass))。

我的实体(例如Address)上有一些值对象(具有经典的不可变值对象语义)为@Embeddable。问题是,当在例如: Employee对象上设置地址实例时,我希望dozer始终创建一个新的地址实例,而不是映射已经存在的地址实例。

因此,对于以下类:

代码语言:javascript
复制
public class Employee {

    private Address address;

    public void setAddress(Address address) {
        this.address = address;
    }

    public Address getAddress() {
        return this.address;
    }

}

我希望dozer调用setAddress()时总是使用一个新的Address实例,而不是试图用getAddress()映射新地址的字段。

有办法这样做吗?

EN

回答 1

Stack Overflow用户

发布于 2011-04-12 22:47:25

我想你可以用一个自定义转换器来完成这个任务。请参阅dozer文档中关于自定义转换器的部分。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5374358

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档