SpringBoot+redis集成实现session的同步
1、导入依赖
<!-- Redis -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
<!-- Spring Session Redis 依赖-->
<dependency>
<groupId>org.springframework.session</groupId>
<artifactId>spring-session-data-redis</artifactId>
</dependency>
2、配置类
package com.gc.RedisSession.config;
/**
* @Author gaochuang
* @Description //TODO
* @Date {2023-02-15},{21:12}
* @Param {SpringBootDemo}
**/
import org.springframework.context.annotation.Configuration;
import org.springframework.session.data.redis.config.annotation.web.http.EnableRedisHttpSession;
/**
*
* maxInactiveIntervalInSeconds: 设置 Session 失效时间
* 使用 Redis Session 之后,原 Spring Boot 中的 server.session.timeout 属性不再生效。
*
*/
@Configuration
@EnableRedisHttpSession(maxInactiveIntervalInSeconds = 86400*30)
public class SessionConfig {
}
3、控制器
package com.gc.RedisSession.handler;
/**
* @Author gaochuang
* @Description //TODO
* @Date {2023-02-15},{21:13}
* @Param {SpringBootDemo}
**/
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.servlet.http.HttpServletRequest;
/**
* @Author gaochuang
* @Description //TODO
* @Date {2023-02-15},{17:40}
* @Param {SpringBootDemo}
**/
@RestController
public class RedisSessionController {
@RequestMapping("/getsession")
public String getSession(HttpServletRequest request) {
System.err.println("A的SessionID:" + request.getSession().getId());
return "A的SessionID:" + request.getSession().getId();
}
}
4、配置文件
server.port=8080
# Redis 配置
# Redis 数据库索引(默认为0)
spring.redis.database=0
# Redis 服务器地址
spring.redis.host=10.70.20.25
# Redis 服务器连接端口
spring.redis.port=6379
# Redis 服务器连接密码(默认为空)
spring.redis.password=123456
# 连接池最大连接数(使用负值表示没有限制)
spring.redis.lettuce.pool.max-active=8
spring.redis.lettuce.pool.max-wait=-1
spring.redis.lettuce.shutdown-timeout=100
spring.redis.lettuce.pool.max-idle=8
spring.redis.lettuce.pool.min-idle=0
5、只是为了测试是否可以实现同步,所以创建了第二个同样的项目,将端口号进行了修改,就实现了Session的同步,如果日后需要部署的话,实时的修改配置的环境即可
版权声明:本文为weixin_45648789原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。