您的位置:首页 > 健康 > 养生 > spring的切面编程

spring的切面编程

2025/2/28 4:31:40 来源:https://blog.csdn.net/FZYjiaoshou/article/details/139033110  浏览:    关键词:spring的切面编程

大家好,这里是教授.F

前置条件:

        需要引入核心的aspect包

        前置通知:@Before

        返回通知:@AfterReturning

        异常通知:@AfterThrowing

        后置通知:@After

        环绕通知:@Around

切面编程说白了就是在一个方法的执行再细分出前中后等等。我们使用@Before就能在执行前插入一些操作,使用@After就能在方法执行后进行一些操作。这就是所谓的切面编程,只要了解了动态代理,在理解切面编程,问题不大。

细节说明:

1. 关于切面类方法命名可以自己规范一下, 比如 showBeginLog() . showSuccessEndLog()showExceptionLog(), showFinallyEndLog()

2. 切入表达式的更多配置,比如使用模糊配置 @Before(value="execution(* com.hspedu.aop.proxy.SmartDog.*(..))")

3. 表示所有访问权限,所有包的下所有有类的所方法,都会被执行该前置通知方法@Before(value="execution(* *.*(..))")

4. 当 spring 容器开启了 , 我们获取注入的对象, 需要以接口的类型来获取, 因为你注入的对象.getClass() 已经是代理类型了!

5. 当 spring 容器开启了 , 我们获取注入的对象, 也可以通过 id 来获取, 但是也要转成接口类型.

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com