1 常规方式
下方的redisOperator
就是个工具类,对redis api 操作进行简单的封装,如果有兴趣的,可以下方的地址下载:
CSDN下载地址: https://download.csdn.net/download/qq_15769939/15378282
1.1 登录
// 登录的时候,token存入redis
String uniqueToken = UUID.randomUUID().toString().trim();
redisOperator.set("redis_user_token" + ":" + userId,uniqueToken);
1.2 退出
// 退出的时候,redis中移除token
String uniqueToken = UUID.randomUUID().toString().trim();
redisOperator.del("redis_user_token" + ":" + userId);
2 springSession方式
2.1 引入依赖
<dependency>
<groupId>org.springframework.session</groupId>
<artifactId>spring-session-data-redis</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
2.2 配置存储类型
spring:
session:
store-type: redis
2.3 boot启动类配置
@SpringBootApplication(exclude = {SecurityAutoConfiguration.class}) // 去除安全自动装配
@EnableRedisHttpSession // 开启使用redis作为spring session
2.4 范例代码
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
/**
* 类文件: TestController
* <p>
* <p>
* 类描述:测试控制层
* <p>
* 作 者: AusKa_T
* <p>
* 日 期: 2021/1/20 0010
* <p>
* 时 间: 20:19
* <p>
*/
@RestController
public class TestController {
@GetMapping("/setSession")
public Object setSession(HttpServletRequest request) {
HttpSession session = request.getSession();
session.setAttribute("userInfo","new User");
session.setMaxInactiveInterval(3600);
session.getAttribute("userInfo");
// session.removeAttribute("userInfo");
return "ok";
}
2.5 测试
访问地址接口setSession
,redis客户端
中查看数据
3 相关信息
- 博文不易,辛苦各位猿友点个关注和赞,感谢