gpt4 book ai didi

java - Dozer 中泛型的深度映射

转载 作者:行者123 更新时间:2023-12-01 04:27:16 24 4
gpt4 key购买 nike

我一直在努力解决如何在 Dozer 中使用泛型映射到对象,但经过大量搜索后没有找到任何可以帮助我的东西。

我正在尝试将我编写的一些对象映射到其他人创建的一些对象。我开始使用注释并看到类似的错误,因此我转而使用映射文件。然而,这似乎并没有帮助。

这是我想要实现的目标的示例。

public interface MyObject<T extends MyContent> {
T getData();
}

public interface MyStaff extends MyContent {
Demo getDemo();
}

public interface Demo {
Name getName();
}

public interface Name {
String getFirstName();
String setFirstName(String firstName);
}
<mapping>
<class-a>com.example.Staff</class-a>
<class-b>com.example.MyObject</class-b>
<field>
<a>firstName</a>
<b>data.demo.name.firstName</b>
</field>
</mapping>

这是我看到的错误:

org.dozer.MappingException: No read or write method found for field (data.demo.name.firstName) in class (interface com.example.MyObject)

我尝试了另一种排列(例如,使用具体类而不是接口(interface)),但没有任何效果。

最佳答案

我能够让这个工作。看来问题是由于实现类不是公开的。看起来这可能是一个错误,或者至少是一个增强。 Dozer 应该通知您该类无法访问,因为提示未找到该字段具有误导性。

关于java - Dozer 中泛型的深度映射,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18403641/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com