AspectJ框架使用案例

目录

  • 定义
  • AOP (面向切面编程)
  • 案例
    • 步骤
    • 项目结构
    • 接口 Target
    • 目标类 TargetImpl
    • 切面类 MyAspect
    • pom.xml配置文件
    • spring配置文件 applicationContext.xml
    • 测试类
    • 测试结果




定义

AspectJ是一个面向切面的框架


AOP (面向切面编程)

可以通过预编译方式和运行其动态代理实现在不修改源代码的情况下给程序动态统一添加功能的一种技术,也可以理解为是动态代理的规范化


案例


步骤

  1. 使用maven创建项目
  2. 在spring框架中添加依赖
  3. 使用AspectJ框架为目标类添加功能


AspectJ框架默认使用的是JDK的动态代理模式,JDK动态代理要求目标类必须是接口的实现类,所以我们要创建一个接口并让目标类实现该接口(有关JDK动态代理的使用方法可以参考这篇博客:模拟Java动态代理模式:JDK动态代理)


项目结构

AspectJ框架使用案例

接口 Target

AspectJ框架使用案例

目标类 TargetImpl

AspectJ框架使用案例

切面类 MyAspect


切面指的是目标类中增加的功能,可以将切面类中的方法或者方法体看作切面,因为方法或方法体中就是目标类要增加的功能

在不修改目标类源代码的前提下为目标类中的方法增加显示当前时间的功能
AspectJ框架使用案例

pom.xml配置文件


添加spring依赖
AspectJ框架使用案例

spring配置文件 applicationContext.xml

AspectJ框架使用案例

测试类

AspectJ框架使用案例

测试结果

AspectJ框架使用案例

上一篇:AOP案例(一)


下一篇:「Azure」数据分析师有理由爱Azure之一-Azure能带给我们什么?