SpringBoot集成shiro,MyRealm中无法@Autowired注入Service怎么办

小编给大家分享一下SpringBoot集成shiro,MyRealm中无法@Autowired注入Service怎么办,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!

创新互联专业为企业提供梧州网站建设、梧州做网站、梧州网站设计、梧州网站制作等企业网站建设、网页设计与制作、梧州企业网站模板建站服务,10年梧州做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。

网上说了很多诸如是Spring加载顺序,shiroFilter在Spring自动装配bean之前的问题,其实也有可能忽略如下低级错误。

在ShiroConfiguration中要使用@Bean在ApplicationContext注入MyRealm,不能直接new对象。

道理和Controller中调用Service一样,都要是SpringBean,不能自己new。

错误方式:

@Bean(name = "securityManager")
public SecurityManager securityManager() {
    DefaultWebSecurityManager manager = new DefaultWebSecurityManager();
    MyRealm myRealm = new MyRealm();
    manager.setRealm(myRealm);
    return manager;
  }

正确方式:

@Bean(name = "myRealm")
public MyRealm myAuthRealm() {
    MyRealm myRealm = new MyRealm();
    return myRealm;
  }
@Bean(name = "securityManager")
public SecurityManager securityManager(@Qualifier("myRealm")MyRealm myRealm) {
    DefaultWebSecurityManager manager = new DefaultWebSecurityManager();
    manager.setRealm(myRealm);
    return manager;
  }

看完了这篇文章,相信你对“SpringBoot集成shiro,MyRealm中无法@Autowired注入Service怎么办”有了一定的了解,如果想了解更多相关知识,欢迎关注创新互联行业资讯频道,感谢各位的阅读!


分享标题:SpringBoot集成shiro,MyRealm中无法@Autowired注入Service怎么办
网页网址:http://bzwzjz.com/article/gdjeep.html

其他资讯

Copyright © 2007-2020 广东宝晨空调科技有限公司 All Rights Reserved 粤ICP备2022107769号
友情链接: 定制网站建设多少钱 成都网站设计 企业网站设计 成都网站制作 成都网站设计 成都商城网站建设 外贸网站设计方案 成都定制网站建设 成都网站建设 重庆网站建设 达州网站设计 四川成都网站建设 重庆企业网站建设 重庆企业网站建设 成都网站设计 成都营销网站建设 高端网站设计推广 成都品牌网站设计 高端网站设计 网站制作 自适应网站设计 重庆网站制作