[Java lista] NetBeans + Maven + MavenIde + Spring + JPA + Hibernate
Zsombor
gzsombor at gmail.com
2007. Júl. 19., Cs, 16:21:40 CEST
On 7/19/07, István Viczián <viczian.istvan at gmail.com> wrote:
>
> Szia,
>
> mármint http-n keresztül? És controllert, mert servlet nem nagyon van
> a projektben. ValĂłszĂnű nem lesz jĂł, mert amĂg nem megy vĂ©gig az init,
> nem hiszem, hogy http kéréseket kiszolgál az alkalmazás. Meg amúgy is
> csĂşnya workaround. Ha nem Ăgy gondolod, hanem direktbe, azon semmilyen
> metĂłdushĂvás nem segĂt, mert Magyusz szerint a tranz. körny.
> threadlocal, szálhoz kötött, Ăgy biztos nem kerĂĽl bele.
>
> ValĂłszĂnű az lesz, hogy az elsĹ‘ http kĂ©rĂ©snĂ©l inicializálok, egy
> rekord, ennyit nem ér az egész.
>
> Még Lóci levelére:
> - igen, a nem globális repozitory használata segĂteni fog, köszi
> - a TransactionTemplate azért nem szimpi, mert vért izzadtam, hogy
> legyen annotation-ös tranzakció kezelésem, erre tessék, nincs, és
> használhatom őket keverve - no ezért maradok az első kérésnél
>
> Aki viszont Quartz-ol, vagy Thread-ezik, azt tĂ©nyleg sajnálom, mert ez Ăgy
> gáz.
>
> Viczi
Ööh ... továbbra sem értem, hogy hogyan valósitottad meg ezt az annotációs
tranzakció kezelést, nálam egyszerüen annyi van, hogy minden osztály amire
rá van biggyesztve osztály szinten a @Transactional annotáció az kap
hibernate-s sessiont. Lehet, hogy JPA mögött ez bonyolultabb, de
megvalĂłsĂthatĂł a springes tutorial alapján.
Kb ennyi:
<bean id="hibernateProperties" class="
org.springframework.beans.factory.config.PropertiesFactoryBean">
<property name="location"><value>classpath:hibernate.properties
</value></property>
</bean>
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"
autowire="byName">
<property
name="configLocation"><value>classpath:hibernate.cfg.xml</value></property>
<property name="configurationClass">
<value>org.hibernate.cfg.AnnotationConfiguration</value>
</property>
<property name="hibernateProperties">
<ref local="hibernateProperties"/>
</property>
</bean>
<bean id="autoproxy" class="
org.springframework.aop.framework.autoproxy.DefaultAdvisorAutoProxyCreator"
autowire="autodetect"/>
<bean id="transactionInterceptor" class="
org.springframework.transaction.interceptor.TransactionInterceptor" >
<property name="transactionManager" ref="transactionManager"/>
<property name="transactionAttributeSource">
<bean class="
org.springframework.transaction.annotation.AnnotationTransactionAttributeSource
"/>
</property>
</bean>
<bean id="transactionAdvisor" class="
org.springframework.transaction.interceptor.TransactionAttributeSourceAdvisor
">
<property name="transactionInterceptor" ref="transactionInterceptor"/>
</bean>
<bean id="transactionManager" class="
org.springframework.orm.hibernate3.HibernateTransactionManager"
autowire="autodetect">
<property name="sessionFactory" ref="sessionFactory" />
</bean>
<bean id="transactionAttributeSource"
class="
org.springframework.transaction.annotation.AnnotationTransactionAttributeSource
"/>
S mindegyik szervizemnél:
<bean id="objectManager" class="ize.impl.BigyoService" lazy-init="true">
<property name="sessionFactory" ref="sessionFactory"/>
</bean>
Ezeket meg aztán a startup beanekből nyugodtan lehet hivogatni.
Ăśdv
Zs
--------- következő rész ---------
Egy csatolt HTML állomány át lett konvertálva...
URL: http://javagrund.hu/pipermail/javalist/attachments/20070719/13e59345/attachment-0001.html
További információk a(z) Javalist levelezőlistáról