2009-06-08 7 views
1

J'ai ici un tas de fichiers XML contenant des données et un joli RE-modèle auquel les données appartiennent. Quel est mon problème: j'ai besoin d'obtenir ces données dans un db2. Les tables avec tous les attributs et clés nécessaires sont déjà créées. Je pensais à trois solutions différentes:XML vers Relationnel avec DB2 et Java (et Hibernate?)

  1. analyse XML et la création de requêtes SQL de lui. Cette solution semble simple mais nécessiterait beaucoup de comparaisons de chaînes plutôt laides et similaires.

  2. Insertion du code XML dans la base de données et utilisation de pureXML pour interroger les données et l'insérer dans les tables relationnelles. Cela nécessiterait un peu de bricolage avec pureXML ou XML Extender car je ne les connais pas vraiment.

  3. La solution la plus élégante à mon humble avis. Création d'un modèle objet du modèle ER et d'un mappage Hibernate. Utiliser la réflexion pour créer des objets à partir des données XML. Que d'une manière ou d'une autre, obtenir les bonnes relations entre les objets (Ceci est probablement la partie la plus difficile) et laisser Hiberner au reste.

Y a-t-il un autre moyen que j'ai négligé? Quelle solution préférez-vous? Je pense qu'il y a beaucoup d'embûches sur le chemin avec l'une ou l'autre solution et j'ai peur d'avoir complètement raté quelque chose.

Répondre

1

Numéro 3 tout le chemin. Vous parlez d'utiliser la réflexion pour créer les objets à partir du XML. avez-vous regardé en utilisant jibx pour mapper le xml à votre modèle d'objet. Ce que vous venez de décrire est beaucoup utilisé dans les systèmes STP pour mapper le xml d'autres sources vers des systèmes en aval.

http://jibx.sourceforge.net/

Karl