2010-01-14 15 views
28

Ab sofort habe ich eine funktionierende Spring-Anwendung mit Persistenz. Jetzt möchte ich jedoch Hibernate mit JPA verwenden, um alle meine Datenbankaktivitäten durchzuführen. Ich möchte dies mit einem EntityManager tun.Spring + Hibernate + JPA

Ich habe viele Dokumente und Tutorials zu diesem Thema gelesen, ich bin verwirrt darüber, ob ich eine persistence.xml-Datei brauche oder nicht. Außerdem habe ich mich darüber gewundert, wie ich meine applicationContext.xml-Datei einrichten soll.

Kennt jemand eine gute Seite, um Spring + Hibernate + JPA + mit EntityManager zu lernen?

+6

Warum wurde diese Frage geschlossen? "Ich habe mich darüber gewundert, wie ich meine applicationContext.xml-Datei ebenfalls einrichten kann." - Ist diese Frage nicht klar und spezifisch genug? Komm, hör auf, Fragen zu schließen, die hilfreich sind. –

+4

Ich stimme "Blessed Geek" zu. Das ist eine sehr gefragte Frage, auch ich habe nach dieser Antwort gesucht. Schließen Sie keine Fragen, die hilfreich sind. Und wenn es ein Skript ist, das eine solche Frage schließt, dann korrigieren Sie Ihren Code. – Combustion007

+0

Hier ist ein Online-Kurs, um Spring Jpa und Hibernate mit Maven zu lernen, um die Abhängigkeiten zu verwalten: http://pluralalsight.com/training/Courses/TableOfContents/spring-jpa-hibernate – bh5k

Antwort

12

Ich habe gerade die letzten paar Wochen damit verbracht, die gleiche Art von Projekt einzurichten.

Sie haben eine persistence.xml Datei benötigen, und es gehört in META-INF

Hier ist ein Beispiel meiner Feder Bohnen-Datei für Persistenz:

<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> 

Auch ich bin mit Maven ziehe die spring3 an und überwinde Abhängigkeiten, die ich brauche.

bearbeiten: für eine Lernressource empfehle ich "Frühling Rezepte ein Problem-Lösungs-Ansatz" von Gary Mac http://www.apress.com/book/view/9781590599792. Dies ist eines der besten technischen Bücher, die ich jemals gelesen habe, und es wird Ihnen sicherlich helfen, mit Spring/JPA/Hibernate zu arbeiten.

+0

+1 für Spring Recipes, 1 der besten Tech Bücher jemals. –

+0

danke dafür, es hat sehr geholfen – Albinoswordfish

+0

Danke, das hat sehr geholfen! – Vedran

Verwandte Themen