1.上一次总结了 Spring 的核心三大组件(Core,Beans,Context),今天总结的 AOP、JDBC和事务都可以看成是核心三大组件的应用。

其中 Spring 的事务管理又以 AOP 为基础的声明式事务管理,对 JDBC 数据操作进行了补充。

2.在学习 AOP 的时候,需要搞明白的几个问题。

(1)AOP 是以动态代理为基础的,所以在学习 AOP 之前,首先对动态代理有深刻的理解。

(2)AOP 和切面是什么关系。

(3)AOP 中概念比较多,明白每个名词的含义:切面、增强、代理、切点、连接点。

(4)增强的分类以及增强的使用:编程式、声明式、AspectJ 注解式。各个使用方式下具体如何使用,以及需要注意的地方。

(5)AspectJ 切点 XML 表达式的编写。

3.在学习 JDBC 的时候,需要搞明白的几个问题。

(1)Spring 对 JDBC 的支持是通过 JdbcTemplate 来完成的。

(2)JdbcTemplate 对 Spring JDBC 的作用类似于 DBUtil 对 JDBC 的作用,是一个工具。

(3)JdbcTemplate 的使用

(4)JdbcTemplate 的两种配置方式

(5)JdbcTemplate 为什么不能称之为一个框架,而只是一个工具。

4. 在学习 Spring 事务 的时候,需要搞明白的几个问题。

(1)Spring 的事务管理是通过事务管理器进行管理的,事务管理器是 Spring 事务管理的前提。

(2)XML 声明式事务管理和 @Transactional 注解声明式管理

(3)事务的传播行为:REQUIRED 和 REQUIRED_NEW

(4)事务的其他属性:只读、超时、回滚属性

5.到此为止,Spring 中除  web 和 webmvc 外,其他主要的内容都已经总结完毕。其中还有许多细节的地方,逐步完善吧。

Spring总结——AOP、JDBC和事务的总结的更多相关文章

  1. Spring基于AOP的事务管理

                                  Spring基于AOP的事务管理 事务 事务是一系列动作,这一系列动作综合在一起组成一个完整的工作单元,如果有任何一个动作执行失败,那么事务 ...

  2. Spring 中的 JDBC 事务

    Spring 对 JDBC 的支持 JdbcTemplate 简介 •为了使 JDBC 更加易于使用, Spring 在 JDBC API 上定义了一个抽象层, 以此建立一个 JDBC 存取框架. • ...

  3. Spring学习8-Spring事务管理(AOP/声明式式事务管理)

    一.基础知识普及 声明式事务的事务属性: 一:传播行为 二:隔离级别 三:只读提示 四:事务超时间隔 五:异常:指定除去RuntimeException其他回滚异常.  传播行为: 所谓事务的传播行为 ...

  4. Spring中的Jdbc事务管理

    Spring提供了对事务的声明式事务管理,只需要在配置文件中做一些配置,即可把操作纳入到事务管理当中,解除了和代码的耦合. Spring声明式事务管理,核心实现就是基于Aop. Spring声明式事务 ...

  5. Spring -- spring结合aop 进行 tx&aspectj事务管理配置方法

    1. tx 配置方法, 代码示例 javabean及其映射文件省略,和上篇的一样 CustomerDao.java, dao层接口 public interface CustomerDao { pub ...

  6. spring----AOP注解以及spring的JDBC和事务

    技术分析之:Spring框架的AOP技术(注解方式) 1. 步骤一:创建JavaWEB项目,引入具体的开发的jar包 * 先引入Spring框架开发的基本开发包 * 再引入Spring框架的AOP的开 ...

  7. spring jdbc、事务(三)

    spring整合jdbc spring中提供了一个可以操作数据库的对象(JDBCTemplate),对象封装了jdbc技术. 1.使用spring整合jdbc需要jdbc驱动.c3p0连接池.spri ...

  8. Spring学习之Spring中AOP方式切入声明式事务

    mybatis-spring官方文档说明 一个使用 MyBatis-Spring 的其中一个主要原因是它允许 MyBatis 参与到 Spring 的事务管理中.而不是给 MyBatis 创建一个新的 ...

  9. 死磕Spring之AOP篇 - Spring 事务详解

    该系列文章是本人在学习 Spring 的过程中总结下来的,里面涉及到相关源码,可能对读者不太友好,请结合我的源码注释 Spring 源码分析 GitHub 地址 进行阅读. Spring 版本:5.1 ...

随机推荐

  1. Java int to String互转

    Integer.toString Integer.parseInt(lAyaNums);

  2. Mac OSX - 如何在bash_profile中配置全局环境变量

    我们知道,在Linux操作系统下,配置环境变量是使用如下命令: vim /etc/profile 在OSX下,我们用如下命令打开环境变量配置文件: open ~/.bash_profile 典型的环境 ...

  3. ibatis返回map列表

    ibatis返回map列表 1. resultClass="java.util.HashMap"   <select id="queryCustmerCarNoBy ...

  4. Road to the future——伪MVVM库Q.js

    模仿Vuejs的伪MVVM库,下面是使用说明 项目地址:https://github.com/miniflycn/Q.js 相关项目:https://github.com/miniflycn/Ques ...

  5. 【LeetCode】257. Binary Tree Paths

    Binary Tree Paths Given a binary tree, return all root-to-leaf paths. For example, given the followi ...

  6. MapReduce的一点理解

    对于MapReduce编程,大概率的流程用过的人或多或少都清楚,但是归结到细节上,就有的地方不清楚了,下面根据自己的疑问,加上从网上各处,找到的被人的描述,最自己的疑问做出回答. 1. MapRedu ...

  7. 判断big endian和little endian的方法

    http://blog.sina.com.cn/s/blog_6ab0b9a80101awzr.html   不同体系的CPU在内存中的数据存储往往存在着差异.例如,Intel的x86系列处理器将低序 ...

  8. [Javascript] Functor Basic Intro

    Well, this stuff will be a little bit strange if you deal with it first time. Container Object: Just ...

  9. 未能正确加载“Microsoft.VisualStudio.Editor.Implementation.EditorPackage”包。

    最近在升级 Visual Studio 2015 Update 3 的过程中,等了很长时间都没一点进展,于是就强行终止了升级程序,但VS也因此出了问题. 后来经过修复,不行,卸载再重装,仍然提示这个错 ...

  10. 删除.gitignore中的在version control中的文件

    如果有一个文件例如xyz在版本控制系统中,然后你发现这个文件不应该提交到git上,所以加了.gitignore文件并将其加入其中,但是git不会自动讲其从版本库中移除它.如果你只有一个文件,你可以使用 ...