因为数据库中有个 Date类型的数据,在从数据库中获取数据【就是getXxx方法,当然,自动装配的时候可以直接写在字段上,但也只是针对getXxx方法,不会自动赋值】的时候可以利用这个 @Temporal的注解进行自动格式化。
@Temporal 注解的取值只有三种,如下图:
如果某个实体类的字段包含 Date类型,那么数据库中应该存储的是 “yyyy-MM-dd hh:MM:ss”的形式,针对这种形式的存储,@Temporal 有三种注解值对应。
第一种:@Temporal(TemporalType.DATE)——》实体类会封装成日期“yyyy-MM-dd”的 Date类型。
第二种:@Temporal(TemporalType.TIME)——》实体类会封装成时间“hh-MM-ss”的 Date类型。
第三种:@Temporal(TemporalType.TIMESTAMP)——》实体类会封装成完整的时间“yyyy-MM-dd hh:MM:ss”的 Date类型。
两种注解:
写在字段上:
@Temporal(TemporalType.TIMESTAMP) private Date birthday;写在 getXxx方法上:
@Temporal(TemporalType.DATE) @Column(name = "birthday", length = 10) public Date getBirthday() { return this.birthday; }
1