42 votes

Persistez le DateTime de Joda-time via Hibernate

J'utilise Jodatime dans mon application Play, mais je suis actuellement obligé de convertir en va-et-vient de / à java.util.Date et java.sql.Time .

Puisque jodatime est inclus dans la distribution Play, je pense qu’il existe probablement une meilleure façon de procéder. Est-il possible de créer des champs de modèle DateTime s au lieu de java.util.Date et java.sql.Time afin que la conversion soit effectuée automatiquement? Y a-t-il un autre moyen de rationaliser cela?

53voto

Kees de Kooter Points 3268

Ajoutez l'annotation suivante à votre champ de date:

     @Type(type="org.joda.time.contrib.hibernate.PersistentDateTime")
 

Hibernate va maintenant faire le sale boulot pour vous.

(Assurez-vous d'avoir joda-time-hibernate.jar dans votre chemin de classe )

10voto

Samuel Points 1397
  1. Joda recommande d'utiliser les bibliothèques UserType avec Hibernate 4.0, la version d'Hibernate livrée avec Play 1.2.x (voir: http://joda-time.sourceforge.net/contrib/hibernate/index.html ).

  2. La bonne façon de gérer la dépendance consiste à utiliser le fichier dependencies.yml , y compris une ligne comme celle-ci:

     - org.jadira.usertype -> usertype.jodatime 2.0.1
     

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X