Sping2.5 整合JPA 需要两个配置文件 一个是JPA的配置文件 一个是Beans.xml
下面是
JPA的配置文件persistence.xml
这是JPA的配置文件 需要在src下新建一个META-INF 如图所示
下面是配置文件的内容:
<?xml version="1.0" encoding="UTF-8"?><persistence xmlns=" http://java.sun.com/xml/ns/persistence" version="1.0">
<persistence-unit name="chenchuang" transaction-type="RESOURCE_LOCAL">
<provider>org.hibernate.ejb.HibernatePersistence</provider> <!-- JPA 和hibernate的对接 -->
<properties>
<property name="hibernate.dialect" value="org.hibernate.dialect.MySQL5Dialect"/>
<property name="hibernate.connection.driver_class" value="org.gjt.mm.mysql.Driver"/>
<property name="hibernate.connection.url" value="jdbc:mysql://localhost:3306/cc"/>
<property name="hibernate.connection.username" value="root"/>
<property name="hibernate.connection.password" value="root"/>
<property name="hibernate.max_fetch_depth" value="3"/>
<property name="hibernate.hbm2ddl.auto" value="update"/>
<property name="hibernate.hbm2ddl.show_sql" value="true"/>
</properties>
</persistence-unit>
</persistence>
-------------------------------------------------------------------------------------------------------------------------------------------------------------------
下面是Beans.xml的配置文件:
<?xml version="1.0" encoding="UTF-8"?>
<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-2.5.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx-2.5.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-2.5.xsd">
<context:annotation-config />
<context:component-scan base-package="com.chenchuang" />
<!-- <context:property-placeholder location="classpath:jdbc.properties"/>
下面是配置的数据源 采用的是apache的 -->
<!-- <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"
destroy-method="close"> <property name="driverClassName" value="${driverClassName}"/>
<property name="url" value="${url}"/> <property name="username" value="${username}"/>
<property name="password" value="${password}"/> <property name="initialSize"
value="${initialSize}"/> <property name="maxActive" value="${maxActive}"/>
<property name="maxIndel" value="${maxIndel}"/> <property name="minIndel"
value="${minIndel}"/> </bean> -->
<!-- 这是这一个bean 是用于创建entityManagerfactory 的 -->
<bean id="entityManagerFactory"
class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
<!-- <property name="dataSource" ref="dataSource"/> -->
<property name="persistenceUnitName" value="chenchuang" />
<!-- <property name="persistenceXmlLocation" value="/METE-INF/persistence.xml"/> -->
<property name="loadTimeWeaver">
<bean
class="org.springframework.instrument.classloading.InstrumentationLoadTimeWeaver" />
</property>
</bean>
<!-- 这个是第二个bean 是用于管理事物的 -->
<bean id="transactionManager" class="org.springframework.orm.jpa.JpaTransactionManager">
<property name="entityManagerFactory" ref="entityManagerFactory" />
</bean>
<tx:annotation-driven transaction-manager="transactionManager" />
</beans>