1、切面:
事务、日志、安全性框架、权限等都是切面。不是“目标方法的”都是切面。
2、通知:
切面中的方法,就是~
3、目标类:
4、切入点:
只有符合某些条件时,才让“通知和目标方法”结合运行的“条件”。
5、织入:
形成代理对象方法的过程,叫~
事务、日志、安全性框架、权限等都是切面。不是“目标方法的”都是切面。
2、通知:
切面中的方法,就是~
3、目标类:
4、切入点:
只有符合某些条件时,才让“通知和目标方法”结合运行的“条件”。
5、织入:
形成代理对象方法的过程,叫~
优点:事务、日志、安全性框架、权限、目标方法之间完全是松耦合的。
springAOP的具体加载步骤:
1、当spring容器启动时,加载了spring的配置文件
2、为配置文件中所有的 <bean> 创建对象
3、spring容器会解析 aop:config 的配置:
·解析切入点表达式,用切入点表达式和纳入spring容器中的bean 做匹配
如果匹配成功,则会为该 bean 创建代理对象,代理对象的方法 = 目标方法+通知
如果不成功,不会创建代理对象
4、在客户端利用 context.getBean() 获得对象时,
如果该对象有代理对象则返回代理对象,
如果没有代理对象,则返回目标对象。
说明:如果目标类没有实现接口,则spring容器会采用cglib的方式产生代理对象;如果实现了接口,会采用jdk的方式