解决Spring嵌套代理拦截问题

本文详细阐述了如何在Spring框架中解决Service类内部方法的嵌套拦截问题,通过重新从Spring容器获取实例并调用特定方法,实现期望的代理层拦截效果。同时提供了一个更优的解决方案——将实例注入自身,以避免不必要的拦截。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

场景:

1. Spring首先拦截Service层(这个在spring配置文件里面,就不写出来),代码如下:

 

2. 在同一个类里面,有个注解拦截相同方法,就导致嵌套拦截

 

想要结果是:当在同一个类里面或其它Service类调用 findAllMenu方法时候,会进入findAllMenu的代理层也就是会这个代理层拦截,而不是直接进入这个方法代码

 

解决办法:就是重新从Spring容器拿出这个Service实例,然后调用findAllMenu方法,这时候就会被拦截,代码如下:

 

 

更好方法,可以把这个实例注入当前Service里面,也就是自身引用。:)

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值