springsession、springsecurity和redis整合的简单使用
- 手机
- 2025-09-09 21:45:01

在上一篇**spring session搭配redis的简单使用**文章中,我们简单的使用了spring session和redis,实现了session的外部化存储,下面我们结合spring security进一步体验这三者的搭配。
首先新增spring-boot-starter-security依赖
<!--实现spring boot对security的自动化配置--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-security</artifactId> </dependency>然后我们简单通过配置文件的方式在内存中创建一个用户
# 应用名称 spring: application: name: spring-session-redis-security # 对应 RedisProperties 类 redis: host: localhost port: 6379 password: 479368 # Redis 服务器密码,默认为空。生产中,一定要设置 Redis 密码! database: 0 # Redis 数据库号,默认为 0 timeout: 15000 # Redis 连接超时时间,单位:毫秒。 # 对应 RedisProperties.Jedis 内部类 jedis: pool: max-active: 8 # 连接池最大连接数,默认为 8 。使用负数表示没有限制 同一时间最大只能执行8条sql语句,每执行一条语句就会建立一个连接 max-idle: 8 # 默认连接数最大空闲的连接数,默认为 8 。使用负数表示没有限制。 min-idle: 0 # 默认连接池最小空闲的连接数,默认为 0 。允许设置 0 和 正数。 max-wait: -1 # 连接池最大阻塞等待时间,单位:毫秒。默认为 -1 ,表示不限制。 执行语句到数据库响应数据的时间 security: user: name: user password: user server: port: 8858启动应用,查看redis访问前数据,什么数据都没有
访问SessionController中的http://localhost:8858/session/getAll接口,先不登陆,查看redis,可以看到redis多出了一条session数据
通过user进行登录,再次查看redis,我们可以发现先前的sessionId改变了,同时还多出了一条数据"spring:session:index:org.springframework.session.FindByIndexNameSessionRepository.PRINCIPAL_NAME_INDEX_NAME:user",这条数据就是我们刚登陆的user
为了了解更多seesion的详细信息,我们可以通过hgetall session语句查询
hgetall spring:session:sessions:9fea3331-9b01-48ff-b469-1fffcbb0b654最后我们通过访问http://localhost:8858/logout这个接口可以访问到spring security自带的退出登录的页面
点击Log Out退出登录,然后再出查看redis,我们会发现之间的增加的那条用户数据不见了
springsession、springsecurity和redis整合的简单使用由讯客互联手机栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“springsession、springsecurity和redis整合的简单使用”
上一篇
傅里叶分析之掐死教程