我正在使用ModelMapper将JPA实体映射到DTO。我有实体收藏 dto由wsimport从wsdl文件中生成,但不会生成集合的setters
WaitForSingleObject
我使用一个简单的MapperUtils映射实体和dto
public class sampleEntity{
private String name;
private Collection<String> list;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Collection<String> getList() {
return list;
}
public void setList(Collection<String> list) {
this.list = list;
}
}
public class sampleDTO{
private String name;
private Collection<String> list;
//getters & setters
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Collection<String> getList() {
return list;
}
//no collection setters with jaxb!!! Use getList().add()
}
那么,如果Entity.XXXX是Collection,那么如何使用ModelMapper来使用DTO.getXXXX.add()?
答案 0 :(得分:1)
我不知道ModelMapper是否能够在映射过程中支持对目标的getList()。add()调用。
有两种方法可以解决您的问题。
方法1:启用字段匹配
modelMapper.getConfiguration()
.setFieldAccessLevel(AccessLevel.PRIVATE)
.setFieldMatchingEnabled(true);
方法2:
尝试使用wsimport生成setter代码。