spring+hibernate之applicationContext.xml配置
在业务类如果实现了接口,得增加如下代码 <property name="proxyTargetClass"> <value>true</value> </property>
<?xml version="1.0" encoding="UTF-8"?>
- <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
- <beans>
- <bean id="mySessionFactory"
- class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
- <property name="configLocation">
- <value>classpath:hibernate.cfg.xml</value>
- </property>
- </bean>
- <bean id="myTransactionManager"
- class="org.springframework.orm.hibernate3.HibernateTransactionManager">
- <property name="sessionFactory">
- <ref bean="mySessionFactory" />
- </property>
- </bean>
- <bean id="myBaseTransactionProxy"
- class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean"
- abstract="true">
- <property name="transactionManager" ref="myTransactionManager" />
- <property name="transactionAttributes">
- <props>
- <prop key="*">PROPAGATION_REQUIRED</prop>
- <!--
- <prop key="insert*">PROPAGATION_REQUIRED</prop>
- <prop key="save">PROPAGATION_REQUIRED</prop>
- <prop key="update*">PROPAGATION_REQUIRED</prop>
- <prop key="edit*">PROPAGATION_REQUIRED</prop>
- <prop key="del*">PROPAGATION_REQUIRED</prop>
- <prop key="get*">PROPAGATION_REQUIRED,readOnly</prop>
- <prop key="query*">PROPAGATION_REQUIRED,readOnly</prop>
- <prop key="disPlay*">PROPAGATION_REQUIRES_NEW</prop>
- -->
- </props>
- </property>
- </bean>
- <bean id="UsersDAO" class="com.notepad.dao.UsersDAO">
- <property name="sessionFactory">
- <ref bean="mySessionFactory" />
- </property>
- </bean>
- <bean id="userTarget" class="com.notepad.bussies.UserService">
- <property name="usersDao">
- <ref local="UsersDAO" />
- </property>
- </bean>
- <bean id="UserService" parent="myBaseTransactionProxy">
- <property name="proxyTargetClass">
- <value>true</value>
- </property>
- <property name="target">
- <ref local="userTarget" />
- </property>
- </bean>
- </beans>