基於JPA的應用程序使用EntityManagerFactory的實現類來獲取EntityManager實例.JPA定義了2種類型的實體管理器 spring
以下的<bean>聲明展示了在Spring中如何使用LocalContainerEntityManagerFactoryBean來配置容器管理類型的JPA 數據庫
<bean id="entityManagerFactory" class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean"> <property name="dataSource" ref="dataSource"> <property name="jpaVendorAdapter" ref="jpaVendorAdapter"> </bean>
jpaVendorAdapter屬性用於指明所使用的是哪個廠商的JPA實現.Spring提供了多個JPA廠商適配器 spa
咱們使用Hibernate做爲JPA實現,因此將其配置爲一個HibernateJpaVendorAdapter code
<bean id="jpaVendorAdapter" class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter"> <property name="database" value="數據庫"> <property name="showSql" value="true"> <property name="generateDdl" value="true"> <property name="databasePlatform" value="數據庫Dialect"> </bean>從JNDI獲取實體管理器工廠
使用Spring的jee命名空間下的<jee:jndi-lookup>元素來獲取對EntityManagerFactory的引用 orm
<jee:jndi-lookup id="entityManagerFactory" jndi-name="persistence/XXXXX"> xml
無論如何獲得EntityManagerFactory,一旦有了這個對象接下來就能夠編寫DAO了 對象
之後會介紹如何使用Spring Data Jpa來簡化DAO層的開發 ip