hibernate 注解 给时间默认值为当前时间

xiabibo 发布于 2011/10/15 09:59
阅读 7K+
收藏 0

【开源中国 APP 全新上线】“动弹” 回归、集成大模型对话、畅读技术报告”

     //DATE            - java.sql.Date        
     //TIME            - java.sql.Time        
     //TIMESTAMP - java.sql.Timestamp        
     @Temporal(TemporalType.TIMESTAMP)        
     @Column(name="start_time")        
     private Date startTime;   

 

上面的方法可以是默认是当前时间吗,不能的话该怎么写呢,三种类型的时间形式有什么区别。

加载中
0
xiabibo
xiabibo

date 表示年月日,如YY-MM-DD

datetime 表示年月日和时间信息,如YY-MM-DD HH:MM:SS

datestamp 和datetime表示的信息相同,但时间范围不同

 

时间范围

date -- > '1000-01-01' to '9999-12-31'.

datetime --> '1000-01-01 00:00:00' to '9999-12-31 23:59:59'.

datestamp -- > '1970-01-01 00:00:01' UTC to '2038-01-19 03:14:07' UTC

0
xiabibo
xiabibo
java.sql.Date 日期型,精确到年月日,例如“2008-08-08”

java.sql.Time   时间型,精确到时分秒,例如“20:00:00”

java.sql.Timestamp 时间戳,精确到纳秒,例如“2008-08-08 20:00:00.000000001”
0
xiabibo
xiabibo

但是怎么给date 给个默认值(当前时间),避免新添加字段后,还需要些数据库脚本更新以前的旧数据(要是没有默认值,以前的数据这个时间字段就是个null了)

0
-10
-10
private Date startTime = new Date();//默认值咯
0
xiabibo
xiabibo

这种好像不行啊,用注解给默认值才可以,不知道当前时间用注解怎么写。
@Column(columnDefinition="TIMESTAMPTZ default '2009-01-01 00:00:00' ")

像这种样子的,后面的时间换成当前时间。

OSCHINA
登录后可查看更多优质内容
返回顶部
顶部