千万不要在OAuthRealm注入serivce
注意:当在OAuth2Realm这个类中使用@Autowired方式注入自己的service。所有被注入的service,以及所有引用了他们的service都不会被spring的动态代理增强。
后果:这将导致所有利用动态代理实现的注解(如@Transactional)失效。如果要在其中使用service类。建议使用SpringContextUtil.getBean的形式获得。
原因:shiro加载早于spring的bean。具体百度AuthorizingRealm子类注入
分享给大家,希望大家少走弯路。