luckyxl0 2020-03-23
1、在使用shiro的项目中,整合Cache,@Cacheable失效
2、去掉ShiroConfig后,@Cacheable能够最长使用,其他注解也OK
@Cacheable ,当使用ehcache时,autoconfig机制会根据配置文件自动去初始化bean
而shiroConfig在@Configuration构造时,也会去初始化ehcache ,项目启动会产生如下异常
realm原始代码(错误):
public class UserRealm extends AuthorizingRealm {
@Autowired
private AdminService adminService;
@Autowired
private CadreService cadreService;
@Autowired
private ParticipantService participantService;
@Autowired
private VoteService voteService;
protected AuthorizationInfo doGetAuthorizationInfo(PrincipalCollection principals) {……}
//认证
@Override
protected AuthenticationInfo doGetAuthenticationInfo(AuthenticationToken authenticationToken) throws AuthenticationException {……}
}在realm的自动注入下加@Lezy注解,问题解决
public class UserRealm extends AuthorizingRealm {
@Autowired
private AdminService adminService;
@Autowired
private CadreService cadreService;
@Autowired
private ParticipantService participantService;
@Autowired
private VoteService voteService;
protected AuthorizationInfo doGetAuthorizationInfo(PrincipalCollection principals) {……}
//认证
@Override
protected AuthenticationInfo doGetAuthenticationInfo(AuthenticationToken authenticationToken) throws AuthenticationException {……}
}