Shiro Redis注入失敗,shiro導致redis不能注入
阿新 • • 發佈:2022-04-09
================================
©Copyright 蕃薯耀 2022-04-09
https://www.cnblogs.com/fanshuyao/
一、問題描述
在使用Shiro後,原來正常使用的Redis注入失敗
二、Shiro Redis注入失敗原因
經測試發現,有注入問題的Service全部被shiro的realm所依賴:
@Component public class ShiroRealm extends AuthorizingRealm{ @Resource private SysUserService sysUserService; }
上面的sysUserService被ShiroRealm 依賴,導致SysUserService 類中的RedisService注入失敗。
三、解決方案
shiro自定義的realm中引用的service採用延遲載入策略,加上@Lazy註解。
@Component public class ShiroRealm extends AuthorizingRealm{ @Resource @Lazy private SysUserService sysUserService; }
另外,Spring中,有迴圈依賴問題的,也可以加@Lazy註解解決。
(時間寶貴,分享不易,捐贈回饋,^_^)
================================
©Copyright 蕃薯耀 2022-04-09
https://www.cnblogs.com/fanshuyao/