2010-01-14 42 views
28

A partir de ahora tengo una aplicación Spring en funcionamiento con persistencia. Sin embargo, ahora quiero usar Hibernate con JPA para hacer todas las actividades de mi base de datos. Quiero hacer esto usando un entitymanager.Spring + Hibernate + JPA

He estado leyendo muchos documentos y tutoriales sobre este tema, me he estado confundiendo sobre si necesito un archivo persistence.xml o no. También me he estado confundiendo sobre cómo configurar mi archivo applicationContext.xml también.

¿Alguien sabe de un buen sitio para mirar para aprender Spring + Hibernate + JPA + usando EntityManager?

+6

¿Por qué se cerró esta pregunta? "También me he confundido sobre cómo configurar mi archivo applicationContext.xml". - ¿No es esa pregunta clara y lo suficientemente específica? Vamos a cerrar las preguntas que son útiles. –

+4

Estoy de acuerdo con "Blessed Geek". Esta es una pregunta muy buscada, yo también estaba buscando esta respuesta. No cierre la pregunta que sea útil. Y si es una secuencia de comandos que está cerrando esa pregunta, entonces corrija su código. – Combustion007

+0

Aquí hay un curso en línea para aprender Spring Jpa e Hibernate usando Maven para administrar las dependencias: http://pluralsight.com/training/Courses/TableOfContents/spring-jpa-hibernate – bh5k

Respuesta

12

Acabo de pasar las últimas dos semanas tratando de configurar el mismo tipo de proyecto.

usted no necesita un archivo persistence.xml, y pertenece en META-INF

Aquí es un ejemplo de mi archivo de frijol de primavera para la persistencia:

<beans xmlns="http://www.springframework.org/schema/beans" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xmlns:tx="http://www.springframework.org/schema/tx" 
    xmlns:context="http://www.springframework.org/schema/context" 
    xsi:schemaLocation="http://www.springframework.org/schema/beans 
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd 
http://www.springframework.org/schema/tx 
http://www.springframework.org/schema/tx/spring-tx-3.0.xsd 
http://www.springframework.org/schema/context 
http://www.springframework.org/schema/context/spring-context-3.0.xsd"> 

<context:property-placeholder location="/WEB-INF/config.properties" /> 

    <tx:annotation-driven /> 

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

<bean id="jpaTemplate" class="org.springframework.orm.jpa.JpaTemplate"> 
    <property name="entityManagerFactory" ref="entityManagerFactory" /> 
</bean> 

<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> 
    <property name="driverClassName" value="${db.driver}" /> 
    <property name="url" value="${db.url}" /> 
    <property name="username" value="${db.user}" /> 
    <property name="password" value="${db.password}" /> 
</bean> 

<bean id="entityManagerFactory" class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean"> 
    <property name="persistenceUnitName" value="whatisayis" /> 
    <property name="dataSource" ref="dataSource" /> 
    <property name="jpaVendorAdapter"> 
     <bean class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter"> 
      <property name="databasePlatform" value="org.hibernate.dialect.MySQL5InnoDBDialect" /> 
      <property name="showSql" value="true" /> 
      <property name="generateDdl" value="true" /> 
     </bean> 
    </property> 
</bean> 

<bean id="leDAO" class="com.noisyair.whatisayis.dao.jpa.JpaLearningEntryDAO"> 
    <property name="jpaTemplate" ref="jpaTemplate" /> 
</bean> 
<bean id="sampleDAO" class="com.noisyair.whatisayis.dao.jpa.JpaSampleDAO"> 
    <property name="jpaTemplate" ref="jpaTemplate" /> 
</bean> 
    <bean id="tagDAO" class="com.noisyair.whatisayis.dao.jpa.JpaTagDAO"> 
    <property name="jpaTemplate" ref="jpaTemplate" /> 
</bean> 
</beans> 

Además, estoy utilizando Maven para aprovechar las dependencias spring3 e hibernate que necesito.

editar: para obtener un recurso de aprendizaje Recomiendo "Recetas de primavera, un enfoque de solución de problemas" por Gary Mac http://www.apress.com/book/view/9781590599792. Este es uno de los mejores libros técnicos que jamás haya leído, y seguramente lo ayudará a comenzar a utilizar Spring/JPA/Hibernate.

+0

+1 para Spring Recipes, 1 de la mejor tecnología libros alguna vez. –

+0

gracias por eso, ayudó mucho – Albinoswordfish

+0

¡Gracias, esto ayudó mucho! – Vedran