1.
- 首先我要控制事务,要想控制事务就得使用一个connection
- 所以只能提取出来connection
- 所以注重对象的注入
这个重点就是怎么注入的问题?
重点:加强联系 IOC
2.
1.怎么踢掉重复代码?
2.动态代理!AOP
作用就是在程序运行期间不改变源码对已有方法进行增强。Jdk动态代理
3.为什么需要CGLIB动态代理?这个可以不要求实现接口。
这个基于子类的动态代理
- 什么时候需要用到封装思想?当要求返回结果集跟实体类属性一样,那么就需要封装思想。
- 什么时候用AOP?就是当我们重复的程序代码抽取出来,在需要执行的时候,使用动态代理技术,在不修改源码的 基础上,对我们的已有的方法进行增强。
- Oop是面向对象编程。
3.
我们需要告诉spring:
增强的类是谁?公用代码
对哪些方法增强,切入点:声明间和通知间的。
增强代码何时执行:通知类别。
所有的切入点都是连接点。被增强的 都是切入点。
4.
当我们配置了环绕通知之后,当运行时,切入点方法没有执行,而环绕通知执行了
我们的环绕通知中,没有明确的切入点方法调用。
解决:Spring框架个哦我们提供了一个接口,ProceedingPoin。该接口可以作为环绕通知的方法参数来调用。在程序运行期间,spring会给我们提供接口的实现类,我们在环绕通知中直接使用就行。
接口中有个方法:proceed(),他的作用就相当于method.invoke()明确调用切入点方法。
Spring环绕通知:
它是给我们提供的一种可以在代码中手动控制增强方法何时关于执行的机制。