Obecnie pracuję nad budowaniem biblioteki do modularyzacji niektórych z mojego kodu i mam problem z Hibernate.Wiele konfiguracji hibernacji
W mojej głównej aplikacji mam konfigurację hibernacji, aby uzyskać informacje, które trzeba uruchomić, ale mam również potrzebę hibernacji w mojej bibliotece, ponieważ niektóre z obiektów, które chcę, mogą być używane w innych aplikacjach.
Kiedy uruchamiam mój serwer Tomcat, przy obu ustawieniach hibernacji, dostaję błędy stwierdzające, że ziarna nie mogą zostać rozwiązane i jeden mówi, że moje parametry pozycyjne nie są w moim zapytaniu. Jednak po uruchomieniu Tomcat tylko z konfiguracją Hibernate aplikacji zaczyna się dobrze.
Oto co configs wyglądać ...
Z biblioteki:
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<mapping resource="blah.hbm.xml"/>
<mapping resource="blargh.hbm.xml"/>
<mapping resource="stuff.hbm.xml"/>
<mapping resource="junk.hbm.xml"/>
<mapping resource="this.hbm.xml"/>
</session-factory>
</hibernate-configuration>
A z aplikacji:
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<property name="hibernate.cache.provider_class">org.hibernate.cache.EhCacheProvider</property>
<!-- Enable the query cache -->
<property name="hibernate.cache.use_query_cache">true</property>
<!-- Echo all executed SQL to stdout -->
<property name="show_sql">false</property>
<!-- mapping files -->
<mapping resource="appStuff"/>
<mapping resource="appBlah"/>
<mapping resource="appBlargh"/>
<mapping resource="appJunk"/>
<mapping resource="appThis"/>
</session-factory>
</hibernate-configuration>
nadal jestem całkiem nowe do hibernacji i ten to dziwna konfiguracja.
Wygląda na to, czego szukam, ale pozwól, że o to zapytam. Czy byłoby lepiej, aby moja biblioteka miała własną fabrykę sesji, z której może korzystać, czy też powinienem mieć jedną fabrykę sesji na całość? Dla mojej sytuacji wygląda na to, że wiele fabryk sesji byłoby bardziej odpowiednie, ale nie wiem, czy popadnę w kłopoty, jeśli pójdę tą drogą. – Shaded
Szczerze mówiąc, nie mam tak dużego doświadczenia z Hibernate. Jednak z tego, co opisujesz, myślę, że wiele obiektów SessionFactory wydaje się odpowiednie dla twojego przypadku użycia, ponieważ pomaga w modularyzacji kodu. Ale nie wierz mi na słowo, bo nie wiem nawet, czy może to mieć wpływ na wydajność, na przykład czy jakiekolwiek inne problemy. –
Dzięki za pomoc, jestem pewien, że wiele to droga. Będę biec z tym i mam nadzieję, że to nie wróci, by mnie ugryźć! Jeszcze raz dziękuję! – Shaded