java如何使用ModelMapper将外键从dto映射到实体对象?
这是我的用户实体
class UserEntity {
Long id;
String name;
}
这是我的用户登录实体
class UserLoginEntity {
@ManyToOne
User user;
String loginTime;
}
假设一个用户可以有很多登录时间。 下面是为用户添加登录时间的dto
class UserLoginDto {
Long user; //User id foreign key
String loginTime;
}
现在我无法将UserLoginDto
转换为UserLoginEntity
,因为在dto中,我将用户作为Long
传递,它希望它是User
类型。这可以通过模型映射器实用程序完成吗
# 1 楼答案
如果您使用的是ModelMapper,那么您需要将属性命名为
userId
,而不是user
或者您可以将模型映射器配置设置为
LOOSE
,如下所示:modelMapper.getConfiguration().setMatchingStrategy(MatchingStrategies.LOOSE);
并将user
重命名为id
Here是一些关于如何创建DTO并将其与
ModelMapper
一起使用的好例子