2014-09-11 59 views
0

不同的時區我有一個簡單的問題:休眠:@Temporal與服務器和MySQL

@Entity 
public class Entity { 
    @Id @GeneratedValue(strategy = GenerationType.AUTO) 
    private Long id; 

    @Temporal(TemporalType.TIMESTAMP) 
    private Date created = new Date(); 
} 

如果我救了一個具有GMT + 4的服務器的時區,用這樣的實體一個UTC數據庫服務器

Entity entity = new Entity(); 
entityDao.save(entity); 

真的保存了什麼? 保存時,Hibernate是否將GMT + 4轉換爲UTC?

+0

您可以使用SqlDate ... – Kisspa 2014-09-11 08:47:59

+0

內部解釋在這裏:http://stackoverflow.com/questions/14070572/is-java-sql-timestamp-timezone-specific – Andreas 2014-09-11 08:49:13

回答

0

好,最簡單的方式是有mysql在UTC:

/etc/mysql/my.cnf

[mysqld] 
default-time-zone = '+00:00' 

,並設置JAVA_OPTS爲Tomcat:-Duser.timezone = GMT