【发布时间】:2018-02-21 20:43:32
【问题描述】:
我有一个对象学校有一个对象人员,人员已经保存在数据库中,当我保存学校对象时,我给它一个人员 ID
所以在班级学校我有一个 Person 类型的属性 person,而在 SchoolDTO 我有一个 Long 类型的 personId 属性
@Mapper(componentModel = "spring", uses = { PersonMapper.class })
public interface SchoolMapper extends EntityMapper<SchoolDTO, School>{
@Mapping(source = "personId", target = "person")
School toEntity(SchoolDTO schoolDTO);
}
School school = schoolMapper.toEntity(schoolDTO);
log.info(school.getPerson());
public interface EntityMapper <D, E> {
E toEntity(D dto);
D toDto(E entity);
List <E> toEntity(List<D> dtoList);
List <D> toDto(List<E> entityList);
}
@Mapper(componentModel = "spring", uses = {})
public interface PersonMapper extends EntityMapper<PersonDTO, Person> {
default Person fromId(Long id) {
if (id == null) {
return null;
}
Person person= new Person();
person.setId(id);
return person;
}
}
这里的问题是,当我显示人时,它会向我显示 id 及其值和其他属性为 null
【问题讨论】:
-
你能分享你的
PersonMapper和EntityMapper吗 -
thnx @Filip,我编辑了我的问题