Dozer 将 UUID 复制到 UUID

Dozer copy UUID to UUID

尝试将 class 复制到另一个时,UUID 字段出现问题。 example(spring boot,jpa ecc): 我有 2 个 classes(等于)一个是实体,一个是模型。例如,当我从实体复制到模型时,推土机无法复制 uuid 的正确值,而是创建一个新值。

public class Entity{

    private UUID id;
    private string nome;
    //getter and setter and constructurs
}

public class Model{

    private UUID id;
    private string nome;
    //getter and setter and constructurs
}

例如,如果实体是:

uuid id="aaa-111-222"字符串名称="example"

完成后

模型模型=dozer.map(实体,Model.class)

型号id为uuid id="bss-555-555" ,name="example"

为什么?? 我怎样才能正确转换它?我看到这个问题是因为 dozer 在 UUID class 中找不到构造函数引起的(如果我是对的)。

看来您使用的是旧版本的 Dozer。

此问题已由 Dozer 前一段时间解决:

https://github.com/DozerMapper/dozer/issues/83

我刚刚试用了 6.1.0 版本

<dependency>
     <groupId>com.github.dozermapper</groupId>
     <artifactId>dozer-core</artifactId>
     <version>6.1.0</version>
</dependency>

而且效果很好。

你能确认一下你的版本吗?