redis 缓存session 可实现集群
This commit is contained in:
parent
764c798abb
commit
cfbabe672e
|
@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.annotation.TableField;
|
|||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
|
@ -12,7 +13,7 @@ import java.util.Date;
|
|||
* @date 2019-11-12.
|
||||
*/
|
||||
@Data
|
||||
public class AbstractEntity {
|
||||
public class AbstractEntity implements Serializable {
|
||||
|
||||
@TableId(type = IdType.UUID)
|
||||
private String id;
|
||||
|
|
|
@ -1,23 +1,19 @@
|
|||
package com.len.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.len.base.AbstractEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.ToString;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
@TableName("sys_menu")
|
||||
@Data
|
||||
@ToString
|
||||
@EqualsAndHashCode
|
||||
public class SysMenu extends AbstractEntity {
|
||||
public class SysMenu extends AbstractEntity implements Serializable {
|
||||
|
||||
|
||||
private String name;
|
||||
|
|
|
@ -197,7 +197,7 @@ public class SysUserServiceImpl extends BaseServiceImpl<SysUser, String> impleme
|
|||
|
||||
List<SysMenu> menuList = menuService.getUserMenu(s.getId());
|
||||
JSONArray json = menuService.getMenuJsonByUser(menuList);
|
||||
session.setAttribute("menu", json.toJSONString());
|
||||
session.setAttribute("menu",json );
|
||||
|
||||
|
||||
List<CurrentMenu> currentMenuList = new ArrayList<>();
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<artifactId>len-web</artifactId>
|
||||
<name>len-web Maven Webapp</name>
|
||||
<name>len-web</name>
|
||||
<url>http://maven.apache.org</url>
|
||||
<packaging>jar</packaging>
|
||||
|
||||
|
|
|
@ -23,15 +23,10 @@ import org.springframework.beans.factory.annotation.Qualifier;
|
|||
import org.springframework.boot.web.servlet.FilterRegistrationBean;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
import org.springframework.core.annotation.Order;
|
||||
import org.springframework.web.filter.DelegatingFilterProxy;
|
||||
|
||||
import javax.servlet.Filter;
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.LinkedHashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.*;
|
||||
|
||||
/**
|
||||
* @author zhuxiaomeng
|
||||
|
@ -39,6 +34,8 @@ import java.util.Map;
|
|||
* @email 154040976@qq.com
|
||||
* spring shiro
|
||||
* 元旦快乐:code everybody
|
||||
* <p>
|
||||
* 2020/4/19 添加redis缓存,支持集群 默认redis缓存,如果单机配置可放开下面 ehcache
|
||||
*/
|
||||
@Configuration
|
||||
public class ShiroConfig {
|
||||
|
@ -67,7 +64,7 @@ public class ShiroConfig {
|
|||
public BlogRealm blogLoginRealm() {
|
||||
return new BlogRealm();
|
||||
}
|
||||
|
||||
/*==========ehcache 缓存 begin============*/
|
||||
/*@Bean
|
||||
public EhCacheManager getCacheManager() {
|
||||
EhCacheManager ehCacheManager = new EhCacheManager();
|
||||
|
@ -75,6 +72,18 @@ public class ShiroConfig {
|
|||
return ehCacheManager;
|
||||
}*/
|
||||
|
||||
/* @Bean
|
||||
public DefaultWebSessionManager defaultWebSessionManager() {
|
||||
DefaultWebSessionManager defaultWebSessionManager = new DefaultWebSessionManager();
|
||||
defaultWebSessionManager.setSessionIdCookieEnabled(true);
|
||||
defaultWebSessionManager.setGlobalSessionTimeout(21600000);
|
||||
defaultWebSessionManager.setDeleteInvalidSessions(true);
|
||||
defaultWebSessionManager.setSessionValidationSchedulerEnabled(true);
|
||||
defaultWebSessionManager.setSessionIdUrlRewritingEnabled(false);
|
||||
return defaultWebSessionManager;
|
||||
}*/
|
||||
/*==========ehcache 缓存 end============*/
|
||||
|
||||
@Bean
|
||||
public LifecycleBeanPostProcessor getLifecycleBeanPostProcessor() {
|
||||
return new LifecycleBeanPostProcessor();
|
||||
|
@ -169,16 +178,6 @@ public class ShiroConfig {
|
|||
return as;
|
||||
}
|
||||
|
||||
/* @Bean
|
||||
public DefaultWebSessionManager defaultWebSessionManager() {
|
||||
DefaultWebSessionManager defaultWebSessionManager = new DefaultWebSessionManager();
|
||||
defaultWebSessionManager.setSessionIdCookieEnabled(true);
|
||||
defaultWebSessionManager.setGlobalSessionTimeout(21600000);
|
||||
defaultWebSessionManager.setDeleteInvalidSessions(true);
|
||||
defaultWebSessionManager.setSessionValidationSchedulerEnabled(true);
|
||||
defaultWebSessionManager.setSessionIdUrlRewritingEnabled(false);
|
||||
return defaultWebSessionManager;
|
||||
}*/
|
||||
@Bean
|
||||
public FilterRegistrationBean delegatingFilterProxy() {
|
||||
FilterRegistrationBean filterRegistrationBean = new FilterRegistrationBean();
|
||||
|
@ -193,13 +192,15 @@ public class ShiroConfig {
|
|||
public RedisCacheManager cacheManager() {
|
||||
RedisCacheManager redisCacheManager = new RedisCacheManager();
|
||||
redisCacheManager.setRedisManager(redisManager());
|
||||
redisCacheManager.setPrincipalIdFieldName("id");
|
||||
return redisCacheManager;
|
||||
}
|
||||
|
||||
private RedisManager redisManager() {
|
||||
RedisManager redisManager = new RedisManager();
|
||||
// redisManager.setHost(redisConfig.getHost());
|
||||
// redisManager.setPort(redisConfig.getPort());
|
||||
redisManager.setExpire(1800);
|
||||
// redisManager.setExpire(1800);
|
||||
// redisManager.setTimeout(redisConfig.getTimeout());
|
||||
return redisManager;
|
||||
}
|
||||
|
|
12
pom.xml
12
pom.xml
|
@ -206,14 +206,14 @@
|
|||
<dependency>
|
||||
<groupId>org.apache.shiro</groupId>
|
||||
<artifactId>shiro-ehcache</artifactId>
|
||||
<version>1.3.2</version>
|
||||
<version>1.5.2</version>
|
||||
</dependency>
|
||||
|
||||
<!-- https://mvnrepository.com/artifact/org.apache.shiro/shiro-aspectj -->
|
||||
<dependency>
|
||||
<groupId>org.apache.shiro</groupId>
|
||||
<artifactId>shiro-aspectj</artifactId>
|
||||
<version>1.4.0</version>
|
||||
<version>1.5.2</version>
|
||||
</dependency>
|
||||
|
||||
|
||||
|
@ -228,7 +228,7 @@
|
|||
<dependency>
|
||||
<groupId>org.apache.shiro</groupId>
|
||||
<artifactId>shiro-core</artifactId>
|
||||
<version>1.3.2</version>
|
||||
<version>1.5.2</version>
|
||||
</dependency>
|
||||
|
||||
<!-- https://mvnrepository.com/artifact/org.projectlombok/lombok -->
|
||||
|
@ -247,7 +247,7 @@
|
|||
<dependency>
|
||||
<groupId>org.apache.shiro</groupId>
|
||||
<artifactId>shiro-spring</artifactId>
|
||||
<version>1.3.2</version>
|
||||
<version>1.5.2</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
|
@ -368,13 +368,13 @@
|
|||
<dependency>
|
||||
<groupId>org.springframework.session</groupId>
|
||||
<artifactId>spring-session-data-redis</artifactId>
|
||||
<version>2.1.2.RELEASE</version>
|
||||
<version>2.1.9.RELEASE</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.crazycake</groupId>
|
||||
<artifactId>shiro-redis</artifactId>
|
||||
<version>2.4.2.1-RELEASE</version>
|
||||
<version>3.2.3</version>
|
||||
</dependency>
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue