This commit is contained in:
xiangwb
2018-04-09 16:49:18 +08:00
parent d451b8daf2
commit f62228278e
3 changed files with 13 additions and 12 deletions
@@ -91,6 +91,7 @@ public class KickoutSessionControlFilter extends AccessControlFilter {
// 如果队列里没有此sessionId,且用户没有被踢出;放入队列
if (!deque.contains(sessionId) && session.getAttribute("kickout") == null) {
deque.push(sessionId);
}
// 如果队列里的sessionId数超出最大会话数,开始踢人
while (deque.size() > maxSession) {
@@ -115,8 +115,8 @@ public class ShiroConfig {
///////////////////////shiroRealm///////////////////
@Bean
@DependsOn("lifecycleBeanPostProcessor")
public MyShiroRealm shiroRealm() {
MyShiroRealm myShiroRealm = new MyShiroRealm();
public UserRealm shiroRealm() {
UserRealm myShiroRealm = new UserRealm();
myShiroRealm.setCacheManager(cacheManager());
myShiroRealm.setAuthorizationCachingEnabled(false);
return myShiroRealm;
@@ -130,9 +130,18 @@ public class ShiroConfig {
redisManager.setPort(6379);
redisManager.setExpire(1800);//配置缓存过期时间
redisManager.setTimeout(10000);
// redisManager.setPassword();
return redisManager;
}
///////////////////////sessionManager///////////////////
@Bean
public DefaultWebSessionManager sessionManager() {
DefaultWebSessionManager sessionManager = new DefaultWebSessionManager();
sessionManager.setSessionDAO(redisSessionDAO());
return sessionManager;
}
///////////////////////cacheManager///////////////////
@Bean
@DependsOn("lifecycleBeanPostProcessor")
@@ -142,14 +151,6 @@ public class ShiroConfig {
return redisCacheManager;
}
///////////////////////sessionManager///////////////////
@Bean
public DefaultWebSessionManager sessionManager() {
DefaultWebSessionManager sessionManager = new DefaultWebSessionManager();
sessionManager.setSessionDAO(redisSessionDAO());
return sessionManager;
}
@Bean
public RedisSessionDAO redisSessionDAO() {
RedisSessionDAO redisSessionDAO = new RedisSessionDAO();
@@ -34,7 +34,7 @@ import java.util.Set;
* 说明: 自定义realm
*/
@Component
public class MyShiroRealm extends AuthorizingRealm {
public class UserRealm extends AuthorizingRealm {
@Resource
private SysUserService sysUserService;
@Resource
@@ -86,7 +86,6 @@ public class MyShiroRealm extends AuthorizingRealm {
*
* @param authenticationToken
* @return
* @throws AuthenticationException
*/
@Override
protected AuthenticationInfo doGetAuthenticationInfo(AuthenticationToken authenticationToken) {