`

Spring2.0事务(jdbc/hibernate)

阅读更多

<?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:aop="http://www.springframework.org/schema/aop"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx-2.0.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop-2.0.xsd">


<bean id="conn" class="org.apache.commons.dbcp.BasicDataSource">
   <property name="driverClassName"
    value="com.microsoft.jdbc.sqlserver.SQLServerDriver">
   </property>
   <property name="url"
    value="jdbc:microsoft:sqlserver://localhost:1433">
   </property>
   <property name="username" value="sa"></property>
</bean>
<bean id="sess"
   class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
   <property name="dataSource">
    <ref bean="conn" />
   </property>
   <property name="hibernateProperties">
    <props>
     <prop key="hibernate.dialect">
      org.hibernate.dialect.SQLServerDialect
     </prop>
    </props>
   </property>
   <property name="mappingResources">
    <list>
     <value>po/Admin.hbm.xml</value>
    </list>
   </property>
</bean>

<bean id="hibernateTransactionManager"
   class="org.springframework.orm.hibernate3.HibernateTransactionManager">
   <property name="sessionFactory">
    <ref bean="sess" />
   </property>
</bean>

<tx:advice transaction-manager="hibernateTransactionManager"
   id="txAdvice">
   <tx:attributes>
    <tx:method name="*" propagation="REQUIRED"></tx:method>
   </tx:attributes>
</tx:advice>

<aop:config>
   <aop:pointcut id="myPoint"
    expression="execution(* com.services..*.*(..))" />
   <aop:advisor advice-ref="txAdvice" pointcut-ref="myPoint" />
</aop:config>

<bean id="adminDAO" class="po.AdminDAO">
   <property name="sessionFactory">
    <ref bean="sess" />
   </property>
</bean>

<bean id="adminService" class="com.services.AdminServices">
   <property name="adminDAO">
    <ref bean="adminDAO" />
   </property>
</bean>
</beans>

===================================================================

<?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:aop="http://www.springframework.org/schema/aop"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx-2.0.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop-2.0.xsd">

<bean class="org.springframework.aop.aspectj.annotation.AnnotationAwareAspectJAutoProxyCreator" />
<aop:aspectj-autoproxy/>
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
    <property name="driverClassName" value="com.microsoft.jdbc.sqlserver.SQLServerDriver"/>
    <property name="url" value="jdbc:microsoft:sqlserver://localhost:1433"/>
    <property name="username" value="sa"/>
    <property name="password" value=""/>
</bean>


<bean name="adminDAO" class="com.test.AdminDAO"
   init-method="init">
   <property name="ds">
    <ref bean="dataSource" />
   </property>
</bean>

<bean name="check" class="com.services.Check">
   <property name="admindao">
    <ref bean="adminDAO" />
   </property>
</bean>

<bean id="txManager"
   class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
   <property name="dataSource" ref="dataSource" />
</bean>

<tx:advice id="txAdvice" transaction-manager="txManager">
   <tx:attributes>
    <tx:method name="get*" read-only="true" />
    <tx:method name="*" />
   </tx:attributes>
</tx:advice>

<aop:config>
   <aop:pointcut id="fooServiceOperation"
    expression="execution(* com.*services*.*(..))" />
   <aop:advisor advice-ref="txAdvice"
    pointcut-ref="fooServiceOperation" />
</aop:config>

</beans>

 

 

分享到:
评论

相关推荐

    ext2.0+struts2.1+spring2.0+jdbc框架

    Spring2.0通过其JdbcTemplate和Hibernate等工具,简化了JDBC的操作,避免了常见的资源管理和错误处理问题。 这些技术组合在一起,可以帮助开发者构建一套完整的Java Web应用程序,从前端交互到后端业务逻辑处理,再...

    spring framework 2.0 dist 资源文件

    在服务层,Spring 2.0 提供了DAO(数据访问对象)支持,与各种持久化技术(如JDBC、Hibernate、iBatis等)无缝集成,降低了数据访问层的复杂性。同时,Spring的Transaction Management事务管理模块支持编程式和声明...

    Spring2.0宝典源代码

    3. **数据访问集成**:Spring 2.0加强了对各种持久层技术的支持,包括JDBC、Hibernate、JPA等,通过声明式事务管理,使得数据库操作更加便捷和安全。 4. **Web MVC框架**:Spring 2.0的Web MVC框架有了显著提升,...

    spring2.0中文手册及使用指南 chm

    再者,Spring 2.0还包含了一个强大的数据访问层,支持JDBC、ORM框架(如Hibernate和JPA)以及模板类,如JdbcTemplate和HibernateTemplate。这些工具使得数据库操作更加便捷和安全,同时降低了与数据库交互的复杂性。...

    Spring2.0中文教程

    Spring 2.0提供了对多种数据库访问技术的支持,包括JDBC、Hibernate、JPA等。它通过模板类简化了数据访问操作,如JdbcTemplate和HibernateTemplate,降低了代码量,同时提供事务管理能力。 5. **MVC框架** Spring...

    SPRING2.0中文文档

    Spring 2.0在数据访问层提供了对各种持久化技术的集成,包括JDBC、ORM(Hibernate、JPA等)和O/R Mapping。它提供了一致的编程模型,无论选择哪种技术,开发者都能享受到一致的事务管理和服务。 五、Web应用支持 ...

    spring2.0 中文教程

    3. **数据访问集成**:Spring 2.0增强了对各种持久层技术的支持,包括JDBC、Hibernate、iBatis等。它提供了一致的编程模型和事务管理策略,简化了数据库操作。 4. **Web MVC框架**:Spring 2.0的Web MVC框架提供了...

    spring2.0 jar包

    在Spring 2.0中,对数据访问层进行了全面升级,支持多种持久化技术,如JDBC、Hibernate、iBatis等。Spring的声明式事务管理使得事务控制变得简单,只需在配置文件中声明即可。 四、Web MVC框架 Spring 2.0的Web MVC...

    详尽的Spring2.0学习提纲

    五、Spring JDBC与事务管理 1. Spring JDBC:理解JdbcTemplate和NamedParameterJdbcTemplate的使用,简化数据库操作。 2. 事务管理:讲解Spring的事务传播行为,配置事务管理器,以及基于注解的事务控制。 六、...

    Spring 2.0 源代码

    3. **数据访问抽象(Data Access Abstraction)**:Spring 2.0加强了对各种数据访问技术的支持,如JDBC、Hibernate和iBatis。它提供了一组通用的抽象层,简化了数据库操作,同时支持声明式事务管理,降低了事务处理...

    SPRING2.0开发详解

    ### SPRING2.0开发详解 #### 一、Spring框架简介 Spring框架是一个开源的Java平台,用于构建企业级应用程序和服务。它最初由Rod Johnson在2004年创建,并随着时间的发展不断壮大和完善。Spring 2.0版本是Spring...

    spring2.0hibernate3.1

    提供的两个CHM文件——hibernate3.1.CHM和Spring2.0.chm,是官方的英文帮助文档,对于深入理解Spring 2.0和Hibernate 3.1的细节、API以及最佳实践具有极大价值。通过阅读这些文档,开发者可以掌握这两个框架的核心...

    spring2.0技术手册_源代码(全十章)

    最后,通过对每个章节源码的分析,我们可以更深入地了解Spring 2.0的实战应用,例如集成其他框架(如Hibernate、MyBatis)、单元测试、国际化、安全管理等方面。 总而言之,这份源代码集合是Spring 2.0学习者的宝贵...

    spring2.0技术手册--林信良

    - **JDBC 模块**:Spring 2.0 对 JDBC 模块进行了大幅度的改进,提供了更多的异常分类,并且增强了 JdbcTemplate 类的功能。 - **ORM 模块**:支持更多的 ORM 工具,如 Hibernate、MyBatis 等,提供了更为丰富的集成...

    spring2.0技术手册.pdf

    3. **数据库访问增强**:Spring 2.0 对数据库访问支持进行了优化,引入了新的 JDBC 模板类,简化了 JDBC 编码。 4. **更好的 XML 配置支持**:Spring 2.0 提供了更强大、更灵活的 XML 配置选项,使得配置更加简洁。...

    SPRING2.0---SPRING2.0 說明1

    在"配置SPRING2.0"的文件中,可能包含的是Spring 2.0的应用上下文配置文件,用于定义Bean、数据源、事务管理器等组件的配置。学习如何正确配置这些元素是理解和使用Spring 2.0的关键步骤。配置文件通常使用XML格式,...

    spring2.0学习源码

    此外,Spring 2.0在数据访问层也做了重大升级,推出了Spring JDBC和Spring ORM模块。Spring JDBC提供了模板类,简化了数据库操作,降低了SQL与业务逻辑的耦合。Spring ORM集成了Hibernate、JPA等ORM框架,使得开发者...

    Spring2.0技术手册_林信良PDF

    4. **数据访问**:Spring 2.0增强了对JDBC、ORM框架(如Hibernate和iBatis)的支持,提供了声明式事务管理。书中将指导读者如何利用Spring进行数据库操作,以及如何实现事务管理。 5. **Spring与其他技术的集成**:...

Global site tag (gtag.js) - Google Analytics