今天用springCloud的第二天,因为session的问题,今天全搞这个东西了...
关于Spring Session
我用的是分布式微服务,所以session没有办法达到共享.在网上看了一会可以用spring Session,spring session+redis可以实现session共享,在用他的时候发现了一个问题springBoot2.5.2版本好像不支持,没有@EnableRedisHttpSession注解,然后我就加了spring-session的包结果包了版本冲突的问题.然后我把版本改成了2.5.2的,最后成功获取到。
1.先导入
<!--Lettuce是 一 个 基 于 Netty的 NIO方 式 处 理 Redis的 技 术 -->
<dependency>
<groupId>io.lettuce</groupId>
<artifactId>lettuce-core</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.session</groupId>
<artifactId>spring-session-data-redis</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.session</groupId>
<artifactId>spring-session-core</artifactId>
</dependency>
2.application.yml配置
spring:
application:
name: provider //服务名字
session:
store-type: redis
redis:
database: 0
host: 127.0.0.1 //IP地址
port: 6379 //端口
password: //没有设置密码就是空的
3.最后在启动类上进入注解 @EnableRedisHttpSession
总结
这是最简单的一个配置,他的用法和HttpSession用法一样,spring boot 的2.5.0以下可以使用,2.5.2的用不了应该是有其他方法,但我目前还没有找到 其他的还没有测试