Mysql
 sql >> Base de données >  >> RDS >> Mysql

Stocker des dates dans Hibernate en tant que dates UTC ?

Côté back-end :

MySQL ayant le setTimestamp/getTimestamp code, mais il ne sera activé que si vous définissez le paramètre de connexion useLegacyDatetimeCode=false , pour en savoir plus, vous pouvez consulter ce document

Par exemple, si votre base de données est configurée pour utiliser UTC, il peut y avoir plusieurs fuseaux horaires UTC possibles en Java, vous pouvez donc clarifier cela pour mysql-connector en lui indiquant exactement quel est le fuseau horaire de la base de données :

String url =
 "jdbc:mysql://localhost/databasename?useLegacyDatetimeCode=false&serverTimezone=UTC+05:30";

Côté client :

Mettez le code ci-dessous dans le fichier web.xml, il prendra votre fuseau horaire système et affichera l'heure en UTC sur la page Web..

<context-param>
   <param-name>javax.faces.DATETIMECONVERTER_DEFAULT_TIMEZONE_IS_SYSTEM_TIMEZONE</param-name>
   <param-value>true</param-value>
</context-param>

et définissez UTC Timzone pour MySQL, vous pouvez consulter ce lien MySQL devrait-il avoir son fuseau horaire défini sur UTC ?