传智播客JAVA培训2010-5-18 spring
Spring的基本使用很简单。但是对一个想要成为高手的人来讲,我感觉还是有相当的难度,特别是在短时间的范围之内,难上加难哦!大家都知道收获是和付出成正比的,而学习,又不一定是付出都有收获的,还得看悟性和基础。就好比一个没有上过高中的学生直接由初中跳到大学,后果可想之知,上课如读天书!谈何简单。
所以,基础重要,耐心更重要。没有执之以恒的心态, 是无法成为一个高手的,最近我也发现我自己很后浮躁,总是想成为高手,所以没日没有夜的看书,但是我到现在还是没有成为高手,或许将来会。但是,成为高手却并非一朝一夕之功啊,非三年五载看来是不成了,要学习的东西,要补的基础,一个又有一个的坎正等着我去翻越,没有毅力,谈何容易?朝三暮四,能吗?
一、AOP概念
1.连接点。通知执行的地点
一个程序执行过程中的特定点。比如:对一个方法的调用,方法执行的过程本身,
类的初始化,对象的实例化。用来定义在程序的什么地方能通过AOP加入额外的 逻辑。
2.通知。特定功能的代码
在特定连接点处运行的代码。有前置,后置等通知。
3.切入点。一组连接点
定义一个通知 该 何时执行 的一组连接点。通过切入点,我们可以精确的控制程序中什么组件接到什么通知。
4.方面
通知和切入点的组合叫方面。
5.目标
受到AOP操作的对象
6.织入
将方面加入程序的过程
7. 引入
通过可以让一个对象中加入新的方法和属性
二、IOC(inversion of control)控制反转与DI(依赖注入)
1.扩展性
2.减少耦合
Spring IOC 容器 管理我们的对象,以及对象之间的依赖关系。
二、AOP
动态代理
静态代理
如何使用 Java 动态代理。具体有如下四步骤:
1 通过实现 InvocationHandler 接口创建自己的调用处理器;
2 通过为 Proxy 类指定 ClassLoader 对象和一组 interface 来创建动态代理类;
3 通过反射机制获得动态代理类的构造函数,其唯一参数类型是调用处理器接口类型;
4 通过构造函数创建动态代理类实例,构造时调用处理器对象作为参数被传入。
连接点:就是要执行的地方。Join point
织入,就是将通知应该到连接点的过程。
通知:执行前,执行后,返回后,异常抛出后等。
切入点:约定一个范围,advice能运用到那些join point 上。是一组join point .
切面:就是模块化的类,比如日志类
Spring AOP 使用的是代理的方式.jdk/cjlib
使用:
1.定义谁是切面。
三、Hibernate 事务
1.编程式事务
以代码的方式控制事务。
2.声明式事务
在配置文件中进行配置。Spring提供
Spring 事务默认只对运行期异常进行回滚!