Meilleur moyen de mettre en œuvre un Usertype Hibernate après des dépréciations?

StackOverflow https://stackoverflow.com/questions/6083768

  •  08-09-2020
  •  | 
  •  

Question

J'ai récemment obtenu la dernière version de Hibernate et j'ai remarqué que mes utiliseurs d'entretypes ont maintenant des avertissements sur NullSafeget (ResultsT, String) et NullSafeset (Resultats, String) et Nullsafeset (préparé, t, int) étant déprécis en faveur de leurs méthodes correspondantes qui prennent un argument de sessionImplementor. Le problème est que lorsque vous mettez en place un USERTYPE, le sessionImplementor ne vous est pas transmis de manière à ce que ce soit dans Basictype, CompositeuserType, etc.

J'ai vérifié le manuel Hibernate pour voir s'il y avait un exemple mis à jour. Leur exemple d'USERType utilise GET / SET à la place de NULLSAFEGT / NULLSAFESET, mais ces méthodes ont également été obsolètes en faveur de versions qui prennent un sessionImplementor. Donc, il semble que même l'exemple officiel d'Userype d'Hibernate utilise des méthodes obsolètes, ce qui me mène à se demander deux choses:

  1. Y a-t-il un bon moyen d'obtenir le sessionImplementor de l'USERTYPE?
  2. S'il n'est pas pratique d'obtenir la sessionImplementor de l'USERType, et je ne veux pas écrire ma propre nullsafeget / NullSafeset, devrais-je abandonner l'USERType en faveur de l'une de ses alternatives? Quelles sont les différences pratiques entre Usertype et, par exemple, Basictype?
Était-ce utile?

La solution

Merci à Ryan Ransford pour son commentaire sur ma question initiale.Bien que ce ne soit pas vraiment une solution au problème, le Link Il a fourni de laHibernate Developers Liste de diffusion explique pourquoi aucune solution n'est disponible.

Une alternative non obsolète ne peut être fournie en 3.6.x, car faire alors briserait les implémentations d'ustère.

Considérant que ce ne sont que des avertissements de dépréciation, il n'a pas de sens d'investir trop de temps dans une solution de contournement qui sera obsolète lorsque la prochaine version sans entretien est disponible.Malheureusement, la prochaine grande libération est de 4.0, pas 3,7, la migration pourrait donc être un peu plus impliquée.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top