Spring七:SpringAOP API 下

Proxying使用内部bean来隐藏目标和代理之间的区别

将注入到配置中的bean放到property中,来隐藏代理和目标之间的关系,具体修改

 

 

 运行结果如下:

Proxying Class

  • 如果没有某个接口,比如person接口,这种情况下spring会使用CGLib代理,而不是动态代理
  • CGLib代理的工作原理是在运行时生成目标类的子类,spring配置这个生成的子类委托方法调用到原来的目标。
  • 子类是用来实现Decorator模式,织入通知。
  • CGlib的代理对用户是透明的。注意:final方法不能被通知:因为他们不能被覆盖。

使用Global Advice过滤通知

用*号做通配,匹配所有拦截器加入通知链。配置更改如下:

 

 

 

他们的被拦截的是继承了Interceptor后缀的通知,故结果没有Advice的。

 

 

 

 

 

 

posted @ 2018-12-04 09:08  轻抚丶两袖风尘  阅读(118)  评论(0编辑  收藏  举报