[Java lista] NetBeans + Maven + MavenIde + Spring + JPA + Hibernate

István Viczián viczian.istvan at gmail.com
2007. Júl. 19., Cs, 16:29:47 CEST


Szia,

csatolom, ahogy csinálom, két blog alapján csináltam. Nem
hasonlítottam még össze a Tieddel, de az enyém gyanúsan rövidebb.
De nemsokára ránézek a Tiedre, köszi.

Viczi

<bean id="entityManagerFactory"
          class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
        <property name="dataSource" ref="dataSource"/>
        <property name="jpaVendorAdapter">
            <bean

class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter">
                <property name="showSql" value="true" />
                <property name="generateDdl" value="true" />
                <property name="databasePlatform"
value="org.hibernate.dialect.MySQL5Dialect" />
            </bean>
        </property>
    </bean>

<bean id="dataSource"
          class="org.springframework.jndi.JndiObjectFactoryBean"
    >
        <property name="jndiName" value="java:/comp/env/jdbc/SampleDS" />
    </bean>

<bean id="transactionManager"
          class="org.springframework.orm.jpa.JpaTransactionManager" >
        <property name="entityManagerFactory" ref="entityManagerFactory"/>
        <property name="dataSource" ref="dataSource"/>
    </bean>

<tx:annotation-driven transaction-manager="transactionManager"/>

<bean id="sampleService"
          class="sample.JpaSampleService">
        <property name="entityManagerFactory" ref="entityManagerFactory"/>
    </bean>

On 7/19/07, Kristof Jozsa <dyn at ond.vein.hu> wrote:
> Zsombor wrote:
> >
> >
> > On 7/19/07, *István Viczián* <viczian.istvan at gmail.com
> > <mailto: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.
>
> spring config elejen:
> <beans
>     default-autowire="autodetect"
>     default-lazy-init="true"
> .
> igy rovidebb.
>
> dyn
>
> _______________________________________________
> Javalist mailing list
> Javalist at javagrund.hu
> http://javagrund.hu/mailman/listinfo/javalist
>


További információk a(z) Javalist levelezőlistáról