图片截屏自:https://www.bilibili.com/video/BV1np4y1C7Yf?p=226
第一种,不推荐
第二种,只是一种思想
常用第三种、第四种
环境要求:
官网:https://docs.spring.io/spring-session/reference/guides/boot-redis.html
基本配置xml配置:
org.springframework.boot spring-boot-starter-data-redis org.springframework.session spring-session-data-redis
yaml配置
spring:
redis:
host: 你的主机
port: 你的端口
session:
store-type: redis #用redis存session数据
server:
servlet:
session:
timeout: 30m #session过期时间
主类标@EnableRedisHttpSession注解
配置cookie、json序列化配置:
- 配置cookie:https://github.com/spring-projects/spring-session/blob/2.7.0/spring-session-samples/spring-session-sample-javaconfig-custom-cookie/src/main/java/sample/Config.java
- 配置使用json序列化:https://github.com/spring-projects/spring-session/blob/2.7.0/spring-session-samples/spring-session-sample-boot-redis-json/src/main/java/sample/config/SessionConfig.java
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.redis.serializer.GenericJackson2JsonRedisSerializer;
import org.springframework.data.redis.serializer.RedisSerializer;
import org.springframework.session.web.http.CookieSerializer;
import org.springframework.session.web.http.DefaultCookieSerializer;
@Configuration
public class SpringSessionConfig {
@Bean
public CookieSerializer cookieSerializer() {
DefaultCookieSerializer serializer = new DefaultCookieSerializer();
serializer.setCookieName("GULIMALL_SESSION");
serializer.setCookiePath("/");
// serializer.setDomainNamePattern("^.+?\.(\w+\.[a-z]+)$");
serializer.setDomainName("gulimall.com");
return serializer;
}
@Bean
public RedisSerializer
核心原理



