`
yongshuai0314
  • 浏览: 18415 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类

spring入门2

    博客分类:
  • java
 
阅读更多
                第三章 面向切面编程(AOP)基础
AOP相关概念
连接点(Joinpoint):
程序执行的某个特定位置:比如类开始初始化前、类初始化后、某个方法调用前、调用后等。一个类或一段程序代码拥有的一些具有边界性质的特定点,这些代码中的特定点就称为“连接点”,Spring仅支持方法的连接点。
切点(Pointcut):
匹配连接点(Joinpoint)的断言。连接点相当于数据记录,切点相当于查询条件,一个切点可以匹配多个连接点。
增强(Advice):
织入到目标类连接点上的一段程序代码。
目标对象(Target):
增强逻辑的织入目标类
引介(Introduction)
引介是一种特殊的增强,为类添加一些属性和方法。通过它可以动态的为业务类增加接口的实现逻辑,让业务类成为这个接口的实现类。
织入(Weaving):
将增强添加到对目标类具体连接点上的过程。
代理(Proxy)
一个类被AOP织入增强后,就产生了一个结果类,它是融合了原类和增强逻辑的代理类。根据不同的代理方式,代理类既可能是和原类具有相同接口的类,也可能是原类的子类,所以我们可以采用调用原类相同的方式调用代理类
切面(Aspect)
切面由切点和增强(引介)组成,它既包括了横切逻辑的定义,也包括了连接点的定义,spring AOP就是负责实施 切面的框架,它将切面定义的横切逻辑织入到切面所指定的连接点中。
AOP的工作重点在于如何将增强应用于目标对象的连接点上,这包括两个工作:
1,如何通过切点和增强定位到连接点上;
2,如何在增强中编写切面的代码;
代理机制:
AOP通过动态代理技术在运行期织入增强代码,首先了解下AOP使用的两种代理机制:
1,基于JDK的动态代理
JDK1.3以后,java提供了动态代理技术,允许开发者在运行期创建接口的代理实例。
JDK动态代理主要涉及两个类,
Java.lang.reflect.Proxy
Java.lang.reflect. InvocationHandler
InvocationHandler是一个接口,可以通过实现该接口定义的横切逻辑,并通过反射机制调用目标类的代码,动态的将横切逻辑和业务逻辑编织在一起。
Proxy利用InvocationHandler动态创建一个符合某一接口的实例,生成目标类的代理对象。
例子如下:
分享到:
评论

相关推荐

    spring 从入门到精通

    压缩包内包含了众多spring学习资料如:Spring从入门到精通.pdf ,spring+framework+2.5+reference_CN.chm, Acegi(spring_security)培训.ppt, spring事务.pdf,Spring_Framework-3-AOP.ppt,Spring-Hibernate_...

    MyEclipse Spring 入门教程

    MyEclipse Spring 入门教程

    Spring入门教程.rar

    Spring入门教程.rar Spring入门教程.rar Spring入门教程.rar

    Spring入门书籍.pdf

    Spring入门书籍.pdf Spring入门书籍.pdf

    spring入门经典+源代码

    spring入门经典+源代码.Spring入门经典 一书全面透彻地介绍Spring Framework;Spring Framework是Java开发领域最流行的框架,是事实上的企业级应用开发标准。本书浓墨重彩地描述实际的企业级解决方案,每一章都提供了...

    spring入门相关jar包

    spring入门相关jar包,相关jar包为: commons-logging-1.2.jar spring-beans-5.2.6.RELEASE.jar spring-context-5.2.6.RELEASE.jar spring-core-5.2.6.RELEASE.jar spring-expression-5.2.6.RELEASE.jar

    Spring入门教程.pdf

    Spring入门教程.pdf

    spring菜鸟入门经典实例

    spring菜鸟入门,spring入门,spring新手实例,spring教程

    spring入门代码项目

    spring入门代码项目,构建过程看这里: https://blog.csdn.net/qq_38815856/article/details/82312679

    spring入门实例,很难额

    spring入门spring入门spring入门spring入门spring入门spring入门spring入门spring入门

    Spring入门级教程.pptx

    Spring入门级教程,从零开始教你认识Spring,了解Spring,理解Spring的两大核心IoC和AOP,教你如何使用Spring进行开发

    spring入门介绍PPT.rar

    spring入门介绍PPT.rar

    Spring入门经典

    Spring入门经典 一书全面透彻地介绍Spring Framework;Spring Framework是Java开发领域最流行的框架,是事实上的企业级应用开发标准。本书浓墨重彩地描述实际的企业级解决方案,每一章都提供了通俗易懂的示例和动手...

    spring 入门教程

    spring 入门教程 入门教程 ,。。。

    《Spring入门经典》源代码

    《Spring入门经典》源代码(Mert Caliskan, Kenan Sevindik著)

    Spring入门

    Spring入门,关于Spring的详细解释以及spring的工作原理!

    Spring入门.pdf

    Spring框架是由于软件开发的复杂性而创建的。Spring使用的是基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅仅限于服务器端的开发。从简单性、可测试性和松耦合性角度而言,绝大部分Java...

    Spring入门十大问题

    Spring入门 Spring问题 spring spring学习

    spring入门经典源代码

    Spring入门经典书籍附带光盘,包含所有章节示例的源代码

Global site tag (gtag.js) - Google Analytics