1.配置applicationcontext.xml
sessionFactory
<bean id="sessionFactory" class="org.spring.orm.hibernite3.LocalSessionFactoryBean">
<property name="configLocation">
<value>classpath:hibernate.cfg.xml</value>
</property>
</bean >
transactionManager
<bean id="transactionManager" class="org.spring.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory">
<ref name="sessionFactory">
</property>
</bean >
tx:advice
<tx:advice name="txAdvice" transaction-manager="transactionManager">
<tx:attributes>
<tx:method name="add*" propagation="REQUIRED"/>
<tx:method name="del*" propagation="REQUIRED"/>
<tx:method name="mod*" propagation="REQUIRED"/>
<tx:method name="*" read-only="true"/>
</tx:attributes>
</tx:advice>
aop:config
<aop:config>
<aop:pointcut id="allMethodManager" expression="execution(* org.john.manager.*.*(..))"/><!-- pointcut表达式 说明所有返回值 org.john.manager.所有类.所有方法.任何参数 都有效.-->
<aop:advisor pointcut-ref="allMethodManager" advice-ref="txAdvice"/>
</aop:config>
<!-- 配置应用_-->
<bean id="areaManager" class="org.john.manager.areaManager">
<property name="sessionFactory">
<ref name="sessionFactory"/>
</property>
</bean>
areamanager 类-============================
package org.john.november.dao;
import org.john.november.pojo.AreaMaster;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
public class AreaMasterManagerImpl extends HibernateDaoSupport implements AreaMasterManager {
public void addArea(AreaMaster area) {
this.getHibernateTemplate().save(area);
//throw new java.lang.RuntimeException();默认情况下,抛运行期异常,不回提交事务.一般异常会提交
}
}
===
注:以上代码只是大概,为了记忆,所以大小写或者代码拼写有出入,但大致轮廓是这样.