Nous implémentons une page Web pour maintenir une structure organisationnelle. La structure est stockée dans SQL Server 2008 et utilise le nouveau type de données HierarchyID. Étant donné que nous avons eu des problèmes pour faire jouer JPA et Hibernate avec ce nouveau type de données, nous avons décidé d'utiliser des vues et des procédures stockées pour extraire ce type de données. Nous voulons donc utiliser une procédure stockée pour persister dans nos entités, mais comment le faire avec JPA n'est pas clair.Persistance de SQL Server 2008 en utilisant des procédures stockées, JPA et Hibernate
Premièrement, prenons-nous la bonne approche et deuxièmement, est-il possible d'utiliser des procédures stockées pour persister des entités annotées avec JPA?
Grand +1 sur tout ce qui précède; et il ne suffit pas d'insérer/mettre à jour - ** n'importe quelle requête traitant de HierarchyID devrait être écrite comme SQL. On dirait plus de problèmes que ça en vaut la peine. Comme un petit aparté - 'parent_id' n'est pas le moyen de mapper des hiérarchies :-) – ChssPly76
@ ChssPly76 Un grand merci :) Pour ma culture, qu'est-ce qui me manque dans les hiérarchies parent/enfant? Je doute maintenant mais je n'ai pas trouvé de réponse à http://docs.jboss.org/hibernate/core/3.3/reference/en/html/example-parentchild.html. Faites le moi savoir pour que je puisse réparer cette partie. –
Oh, ce n'est pas spécifique à l'hibernation. Le mappage des hiérarchies via 'parentId' est appelé 'modèle de liste d'adjacence'. Il a ses utilisations dans certaines circonstances particulières mais globalement est plutôt inefficace. Le «modèle de jeu imbriqué» est sans doute une approche bien meilleure, bien qu'un peu plus complexe et moins performant dans les opérations de «déplacement». Vous pouvez google l'un ou l'autre pour plus de détails. – ChssPly76