首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 其他教程 > 操作系统 >

Spring调整Hibernate获得HIbernateTemplate之HibernateDaoSupport

2012-09-09 
Spring整合Hibernate获得HIbernateTemplate之HibernateDaoSupport通过继承HibernateDaoSupport来获得Hiber

Spring整合Hibernate获得HIbernateTemplate之HibernateDaoSupport
通过继承HibernateDaoSupport来获得HibernateTemplate(最好使用IoC来注入)

?

dao层代码
package com.lbx.dao.impl;import org.springframework.orm.hibernate3.support.HibernateDaoSupport;import com.lbx.dao.LogDAO;import com.lbx.model.Log;public class LogDAOImpl extends HibernateDaoSupport implements LogDAO {public void save(Log log) {//this.save(log);this.getHibernateTemplate().save(log);//用于测试回滚,默认的时候是RuntimeException//throw new RuntimeException("运行的时候出错了");}}

?

?

?

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:context="http://www.springframework.org/schema/context"xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx"xsi:schemaLocation="http://www.springframework.org/schema/beans           http://www.springframework.org/schema/beans/spring-beans-2.5.xsd           http://www.springframework.org/schema/context           http://www.springframework.org/schema/context/spring-context-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/aop           http://www.springframework.org/schema/aop/spring-aop-2.5.xsd"><context:annotation-config /><context:component-scan base-package="com.lbx" /><tx:annotation-driven transaction-manager="txManager" /><beandestroy-method="close"value="${jdbc.driverClassName}" /><property name="url" value="${jdbc.url}" /><property name="username" value="${jdbc.username}" /><property name="password" value="${jdbc.password}" /></bean><bean id="sessionFactory"ref="dataSource" /><!-- <property name="annotatedClasses"><list><value>com.lbx.model.User</value><value>com.lbx.model.Log</value></list></property> --> <property name="packagesToScan"><list><value>com.lbx.model</value></list></property><property name="hibernateProperties"><props><prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop><prop key="hibernate.show_sql">true</prop></props></property></bean><tx:advice id="txAdvice" transaction-manager="txManager"><tx:attributes><tx:method name="get*" read-only="true" /><tx:method name="add*" propagation="REQUIRED" /></tx:attributes></tx:advice><aop:config><aop:pointcut id="fooServiceOperation"expression="execution(public * com.lbx.service..*.*(..))" /><aop:advisor advice-ref="txAdvice" pointcut-ref="fooServiceOperation" /></aop:config><bean id="txManager"ref="sessionFactory" /></bean><bean id="hibernateTemplate" ref="sessionFactory"></property></bean><bean id="dao" abstract="true"><property name="hibernateTemplate" ref="hibernateTemplate"></property></bean><bean id="logDao" parent="dao" parent="dao" ref="u"></property><property name="logDAO" ref="logDao"></property></bean></beans>

?

热点排行