日期:2014-05-16 浏览次数:20416 次
潜水都一年了,还是觉得应该积累点知识了。
在下菜鸟,高手勿喷!!!
最近做项目,数据库和程序不在一个服务器上,很多地方要插入当前时间,由于对时间的精确比较严格(两个服务器时间很可能不同),为了统一只能插入数据库当前时间了。
?
总结的办法有:
第一种 如果不对数据库插入的时间进行更新,那么用这种办法比较好,具体如下:
?
在数据库中定义该时间字段的默认时间。由于hibernate未开启动态更新默认保存整个对象的所有属性值。所以可以删除要保存的时间属性,或者在hbm.xml文件中定义该字段的 update=“false”? insert=“false”? 属性。这样在保存对象的时候由于执行的sql语句没有插入该时间字段,数据库就会自动生成当前时间。
?
?
第二种 做一个通用的方法专门用来获得数据库时间, 对要插入的对象的属性进行set操作然后保存对象。
?
第三种 查询select current_timestamp() from 自己的VO对象 ,查出来的时间格式为
“2011-05-18 16:05:40.112162”? 然后格式化,set到对应属性。
?