【发布时间】:2017-04-19 14:35:36
【问题描述】:
我有一个 User 和 UserDTO 类,但在 dto 类中我不想使用 LocalDateTime,我想将其转换为长类型。 (因为 protobuf 不支持日期)。所以在代码中:
我的用户实体类:
public class User {
private String name,password;
private LocalDateTime date;
//getters-setters, tostring..
}
我的 DTO:
public class UserDTO {
private String name,password;
private long date;
//getters-setters, tostring..
}
您会看到实体 User 中的日期是 LocalDateTime,而 DTO 中的日期很长。我想用这个推土机:
UserDTO destObject =
mapper.map(user, UserDTO.class);
LocalDateTime 更改代码为 long:
private static long setDateToLong(LocalDateTime date) {
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyyMMddHHmmss");
String dateString = date.format(formatter);
return Long.parseLong(dateString);
}
映射器是否可能知道将 LocalDateTime 更改为 long?我可以以某种方式配置它吗?感谢您的帮助!
【问题讨论】: