如何让日期仅存储到小时:分钟并在以下用户实体中跳过秒和毫秒
import jakarta.persistence.Basic;
import jakarta.persistence.Temporal;
import jakarta.persistence.TemporalType;
class User {
@Basic
@Temporal(TemporalType.DATE)
java.util.Date birthDate
}
您可以使用java.time.LocalDate,数据库中该列的类型是Date。
如果您在数据库中设置类型为日期时间,则会保存 yy-mm-dd 00:00:00。
但这不是一个大问题,JPA 会将其映射到你的类中的字段类型并且工作得很好。
OP 想要存储小时和分钟,但不存储更多时间信息。
这在 JPA 中是不可能直接实现的,除非您愿意使用 Embeddable 将信息拆分为几列。
如果您对使用 Hibernate 专有 API 感到满意,您可以创建一个所谓的 UserType。
这很好地解释了这一点: https://theodoreyoung.wordpress.com/2012/02/07/custom-user-types-with-jpa-and-spring/
汤姆干杯。