目录
1.1什么是AOP
1.2AOP的作用及其优势
1.3AOP底层实现
1.4AOP的动态代理技术
1.5AOP相关概念
1.6AOP开发明确事项
1.7知识要点
1.8基于XML的AOP开发
1.8.1入门
1.8.2快速入门
<!--目标对象-->
<bean id="target" class="com.gdut.aop.Target"></bean>
<!--切面对象-->
<bean id="myAspect" class="com.gdut.aop.MyAspect"></bean>
<!--配置织入:告诉spring框架 哪些方法(切点)需要进行哪些增强(前置、后置...)-->
<aop:config>
<!--声明切面-->
<aop:aspect ref="myAspect">
<!--切面:切点+通知-->
<aop:before method="before" pointcut="execution(public void com.itheima.aop.Target.save())"/>
</aop:aspect>
</aop:config>
2.1XML配置AOP详解
2.1.1切点表达式的写法
表达式语法:execution([修饰符] 返回值类型 包名.类名.方法名(参数))
访问修饰符可以省略
返回值类型、包名、类名、方法名可以用*代表任意
包名与类名之间一个点.代表当前包下的类,两个点..代表当前包及其子包下的类
参数列表可以用两个点代表任意类型的参数列表
2.1.2通知的类型
2.1.3抽取切点表达式
<!--抽取切点表达式-->
<aop:pointcut id="myPointcut" expression="execution(* com.gdut.aop.*.*(..))"></aop:pointcut>
3.1注解实现AOP
3.1.1基于注解的AOP的开发步骤