SpringSession为什么使用
解决session一致性问题,当单体应用时,无需使用SpringSession,当我们使用分布式项目时,搭建集群,要保证session的一致性。
简单使用SpringSession
- 引入依赖
<!-- 引入springboot&redis整合场景 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
<!-- 引入springsession整合场景 -->
<dependency>
<groupId>org.springframework.session</groupId>
<artifactId>spring-session-data-redis</artifactId>
</dependency>
- 编写yml文件
server:
port: 8000
spring:
redis:
host: 192.168.188.128
port: 6379
session:
store-type: redis #session存储方式
timeout: 1800 #session过期时间 单位:秒
创建测试文件,并搭建集群
package com.offcn.controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.servlet.http.HttpSession;
@RestController
public class TestController {
@GetMapping("/set")
public String setSession(HttpSession session){
session.setAttribute("msg","Hello");
return "OK";
}
@GetMapping("/get")
public String getSession(HttpSession session){
return (String)session.getAttribute("msg");
}
}