La risorsa di mappatura di ibernazione si trova nel jar separato
-
28-10-2019 - |
Domanda
Ho un file jar separato che contiene direttamente la mappatura e la mappatura delle entità di ibernazione.Il mio Hibernate confg (cgf.xml) inserito in un altro file jar.E come risultato ottengo l'eccezione "resource: com / iceleads / data / Test.hbm.xml non trovata".
Esempio:
entities.jar
com.package.entity.TestEntity.java
com.package.entity.TestEnity.hbm.xml
mainUsage.jar
com.package.main.MainClass.java - there are I get session factory
SessionFactory factory = HibernateUtil.getSessionFactory();
com.package.main.hibernate.cfg.xml
in HibernateUtil
sessionFactory = new Configuration().configure("hibernate.cfg.xml").buildSessionFactory();
in hibernate.cfg.xml
<mapping resource="com/package/entity/TestEntity/Test.hbm.xml"/>
entity.jar nel classpath mainUsage.jar
Suggeriscimi come posso configurare hibernate.cfg.xml per utilizzare un jar separato con entità.
Grazie mille!
Artem
Soluzione
Usa il metodo addJar()
quando crei una nuova configurazione.
sessionFactory = new Configuration().configure("hibernate.cfg.xml")
.addJar(new File("/path/to/jar")).buildSessionFactory();
Altri suggerimenti
Inclusione del percorso del file di mappatura nella risorsa di mappatura.Ad esempio, usa <mapping resource="com/example/test/test.hbm.xml"/>
e test.hbm.xml
si trova nel pacchetto com.example.test
all'interno del file jar.
Questo servirà allo scopo.