...
On trouvera par exemple dans le fichier /properties/dao/dao.xml, pour une base maîtrisée par l'application :
| Bloc de code |
|---|
<bean id="databaseManager1" class="[...].hibernate.UpgradableHibernateDatabaseManagerImpl" > <property name="sessionFactoryBeanName" value="sessionFactory" /> <property name="createSessionFactoryBeanName" value="createSessionFactory" /> <property name="upgradableSessionFactoryBeanName" value="upgradableSessionFactory" /> </bean> |
Comme on le voit, on indique au gestionnaire de base bases de données quelles sont les session factories (« usines à sessions ») à utiliser pour accéder à la base de données, en créer les structures et les mettre à jour.
...
La déclaration d'un gestionnaire de base de données dont l'application n'a pas la maîtrise se fera de la manière suivante :
| Bloc de code |
|---|
<bean id="databaseManager2" class="[...].hibernate.BasicHibernateDatabaseManagerImpl" > <property name="sessionFactoryBeanName" value="sessionFactory" /> </bean> |
...
Les trois beans sessionFactory, createSessionFactory et updateSessionFactory (le premier seulement si l'on ne maîtrise pas la structure de la base de données) héritent tous du même bean abstrait abstractHibernateSessionfactory :
| Bloc de code |
|---|
<bean id="abstractHibernateSessionFactory" abstract="true" class="[...].orm.hibernate3.LocalSessionFactoryBean" > <property name="configLocation" value="classpath:/properties/dao/hibernate/hibernate.cfg.xml" /> <property name="mappingLocations"> <list> <value> classpath:/properties/dao/hibernate/mapping/Class1.hbm.xml </value> ... </list> </property> </bean> |
...
| Bloc de code |
|---|
<bean id="sessionFactory" parent="abstractHibernateSessionFactory" lazy-init="true" > </bean> <bean id="createSessionFactory" parent="abstractHibernateSessionFactory" lazy-init="true" > <property name="hibernateProperties"> <props> <prop key="hibernate.hbm2ddl.auto">create</prop> </props> </property> </bean> <bean id="updateSessionFactory" parent="abstractHibernateSessionFactory" lazy-init="true" > <property name="hibernateProperties"> <props> <prop key="hibernate.hbm2ddl.auto">update</prop> </props> </property> </bean> |
...
Pour cela, dans Eclipse, après avoir correctement paramétré le fichier hibernate.cfg.xml, faire Window => Open Perspective.
Dans la vue Hibernate Configurations de cette perspective, cliquer sur le bouton "+" pour définir une nouvelle configuration. Renseigner les champs en s'inspirant l'exemple suivant :
...
