springboot使用spring-session加redis实现session共享、通过sessionId删除指定session
依赖:<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId></dependency><dependency>
·
依赖:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.session</groupId>
<artifactId>spring-session-data-redis</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.session</groupId>
<artifactId>spring-session-jdbc</artifactId>
</dependency>
配置:
spring:
session:
store-type: redis
timeout: PT30M
redis:
host: 192.168.2.22
port: 6397
通过sessionId删除指定session:
public void removeSession(HttpServletRequest request, String sessionId) {
HttpSession session = request.getSession();
if (Objects.equals(sessionId, session.getId())) {
session.invalidate();
return;
}
Object sessionRepositoryAttribute = request.getAttribute(SessionRepositoryFilter.SESSION_REPOSITORY_ATTR);
if (sessionRepositoryAttribute == null) {
return;
}
SessionRepository<?> sessionRepository = (SessionRepository<?>) sessionRepositoryAttribute;
if (sessionRepository.findById(sessionId) == null) {
return;
}
sessionRepository.deleteById(sessionId);
}
获取sessionId:
public void logout(HttpServletRequest request) {
String sessionId = request.getSession().getId();
}
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐

所有评论(0)