项目用springboot + shiro + ehcache @cacheable 注解不起作用原因

Shiro框架初始化比Spring框架的某些部件早,导致使用@Autowire注入Shiro框架的某些类不能被Spring正确初始化。

https://stackoverflow.com/questions/21512791/spring-service-with-cacheable-methods-gets-initialized-without-cache-when-autowi

百度到的助力的博客

http://blog.csdn.net/elonpage/article/details/78965176

解决办法

1:在Shiro框架中注入Bean时,不使用@Autowire,使用ApplicationContextRegister.getBean()方法,手动注入bean。保证该方法只有在程序完全启动运行时,才被注入。

2:使用@Autowire+@Lazy注解,设置注入到Shiro框架的Bean延时加载(即在第一次使用的时候加载)

我只尝试了第一种

总之把shiro相关的类中用到的spring管理的类不用自动注入即可

对于这样的问题解决起来真心觉得无力。自己对源码看不懂,也看不过来抓不住重点。百度又作用有限,真心觉得编程就是门玄学了。

最新文章

  1. C#(asp.net )读取ASHX文件(一般处理程序)
  2. FusionCharts简单教程(八)-----使用网格组件
  3. 利用FileStream实现多媒体文件复制
  4. POJ 3903
  5. C# - 时间格式
  6. static关键字用法
  7. phalcon: 过滤(Phalcon\Filter())
  8. hdoj 5326 Work
  9. 如果利用storyboard创建cell中标识符identifier的正确设置
  10. Github上最受关注的前端大牛,快来膜拜吧!
  11. asp.net 定时器
  12. error C2664: “LoadLibraryW”: 不能将参数 1 从“const char *”转换为“LPCWSTR”
  13. mysql多实例的配置(转)
  14. C++ ofstream和ifstream具体的方法和C语言file说明
  15. 原生态JS实现banner图的常用所有功能
  16. 分享一下我进入IT行业的经历
  17. 关于mac 系统如何通过终端 连接linux服务器 并传文件!
  18. 直径上的乱搞 bzoj1999求树直径上的结点+单调队列,bzoj1912负权树求直径+求直径边
  19. JavaStudy——Java之自动拆箱与自动装箱
  20. spring boot通过Interceptor和HandlerMethodReturnValueHandler实现统一处理为controller返回对象统计处理时间

热门文章

  1. 如何选择Spring cloud和 Spring Boot对应的版本
  2. linux的一般命令------附加
  3. 【转】时冲的CSDN:Linux系统各个目录的作用
  4. 查询ES6兼容的网站
  5. elsa core—3.elsa 服务
  6. 日常shell练习
  7. python opencv cv2 imshow threading 多线程
  8. Docker容器管理——运行容器命令
  9. Python中 sys.argv[]
  10. Linux内核中的Workqueue机制分析