spring声明式事务管理原理:在spring中装配Service,事务管理虽然不用出现在程序代码中,但我们必须以某种方式告诉spring哪些业务类需要工作于事务环境下以及事务的规则等内容,以便spring根据这些信息自动为目标事务类添加事务管理的功能。
在pom文件中引入aop和tx的spring依赖jar,然后在applicationContext.xml文件中需要引入aop和tx两个依赖的命名空间:<?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:p="http://www.springframework.org/schema/p" 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-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd"> <!-- 扫描类包,将标注Spring注解的类自动转化Bean,同时完成Bean的注入 --> <context:component-scan base-package="com.baobaotao.dao"/> <context:component-scan base-package="com.baobaotao.service"/> <!-- 配置数据源 --> <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close" p:driverClassName="com.mysql.jdbc.Driver" p:url="jdbc:mysql://localhost:3306/sampledb" p:username="root" p:password="123456" /> <!-- 配置Jdbc模板 --> <bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate" p:dataSource-ref="dataSource" /> <!-- 配置事务管理器 --> <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager" p:dataSource-ref="dataSource" /> <!-- 通过AOP配置提供事务增强,让service包下所有Bean的所有方法拥有事务 --> <aop:config proxy-target-class="true"> <aop:pointcut id="serviceMethod" expression=" execution(* com.baobaotao.service..*(..))" /> <aop:advisor pointcut-ref="serviceMethod" advice-ref="txAdvice" /> </aop:config> <tx:advice id="txAdvice" transaction-manager="transactionManager"> <tx:attributes> <tx:method name="*" /> </tx:attributes> </tx:advice> </beans>
本人博客已搬家,新地址为:http://yidao620c.github.io/
相关推荐
《Spring Data JPA从入门到精通》是一本深入解析Spring Data JPA的书籍,它以Spring Boot框架为核心,旨在帮助读者全面理解并熟练运用Spring Data JPA进行数据库操作。Spring Data JPA是Spring Framework的一个模块...
该教程“Spring框架入门:Java开发者的第一课”主要面向Java初学者,详细介绍了Spring框架的基础知识、核心概念和基本用法。教程涵盖了Spring框架的历史背景、选择Spring的理由、核心概念如依赖注入(DI)和面向切面...
这个“spring MVC_快速入门”文档可能涵盖了以上部分或全部内容,旨在帮助初学者快速理解Spring MVC的工作原理和基本用法。通过学习,开发者可以快速搭建起一个功能完善的Web应用,并逐步深入到更高级的特性,如AOP...
本书由浅入深,循序渐进地介绍了Spring的体系结构和相关知识点,目的是帮助初学者快速掌握Spring,并能使用Spring进行应用程序的开发。本书最大的特色在于每章都是由浅入深,从一个简单的示例入手,让读者快速了解本...
在《Spring快速入门》一文中,作者Hantsy Bai引导我们通过一系列步骤,从零开始搭建一个基于Spring的三层架构Web应用,名为"MyUsers"。该应用使用Struts作为MVC框架的前端,Spring作为业务逻辑层,而Hibernate作为...
如果你以一种淡定的心态翻开这本书,无论你是Java程序员、Spring开发者,还是平台开发人员、系统架构师,抑或是对开源软件源代码着迷的代码狂人,都能从《Spring技术内幕:深入解析Spring架构与设计原理》中受益。...
适用人群:面向所有水平层次的Java开发者,特别适合初学者快速掌握Spring Boot基本操作及高级特性,同时也有助于有经验的开发者提高技能。 使用场景及目标:适用于希望通过Spring Boot快速构建高效可靠应用程序的...
其次针对框架而言,由于业务逻辑中没有Spring的API,所以业务逻辑也可以从Spring框架快速的移植到其他框架。 2 容器:Spring提供容器功能,容器可以管理对象的生命周期,对象与对象之间的依赖关系。你可以写一个...
【Spring Data JPA 入门实例】 Spring Data JPA 是 Spring 框架的一个模块,它简化了数据库访问层(DAO)的开发,通过提供自动化的 Repository 实现,使得开发者无需编写大量的 CRUD(创建、读取、更新、删除)代码...
《Spring快速入门教程.pdf》是为初学者设计的,它可能会包含如何搭建Spring开发环境、创建第一个Spring项目、配置ApplicationContext、以及编写简单的Bean定义等内容。教程可能会通过实例演示如何使用Spring MVC构建...
这本书籍“一本很不错的关于spring入门的书籍”显然是针对初学者设计的,旨在帮助新手快速掌握Spring的基本概念和核心功能。 Spring框架的核心特性包括: 1. **依赖注入(Dependency Injection,简称DI)**:这是...
在本快速入门教程中,我们将探讨 Spring MVC 的核心概念、配置以及如何创建一个简单的应用程序。 1. **Spring MVC 架构** - **模型(Model)**:模型层包含业务逻辑,负责处理数据。 - **视图(View)**:视图层...
《Spring入门到精通》这本书是针对Java开发人员深入学习Spring框架的一份宝贵资源。Spring作为Java企业级应用开发中的核心框架,它提供了丰富的功能,包括依赖注入、面向切面编程、事务管理、数据访问以及Web应用...
本资料涉及了系统架构演变,eureka注册中心,ribbon负载均衡,hystrix断路器,feign,...当然本资料致力于快速的掌握springcloud来解决微服务架构的各种问题。而并不是深入的学习,那必然需要您投入非常多的精力。
Spring框架是由于软件开发的复杂性而创建的。Spring使用的是基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅仅限于服务器端的开发。从简单性、可测试性和松耦合性的角度而言,绝大部分Java...