在一次开发中发现插入数据库的create_time或者update_time少了8个小时。
很自然就想到了时区的问题上。
去服务器上查看服务器的时间。。。
发现服务器的时间正常。
然后到数据库去看看时间。。。。
发现数据库的时间也正常。。
然后再去查看mybatis生成的SQL语句,,,发现SQL语句上的参数就已经少了8个小时了。。
然后我是这样解决的:
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss ");
sdf.setTimeZone(TimeZone.getTimeZone("Asia/Shanghai"));
entity.set("createTime", sdf.format(new Date()));
用SimpleDateFormat类来设置时区,在生成时间。
有更好的办法欢迎留言哦··