起首我们建立一个Spring Boot 2.x的项目,在application.properties设置装备摆设文件中添加Redis的设置装备摆设,Spring和Redis的整合可以参考小编其他的文章,此处不再详解。我们设置办事端口server.port为8080端口用于启动第一个办事。
接下来我们需要在pom文件中添加spring-boot-starter-data-redis和spring-session-data-redis这两个依靠,spring-boot-starter-data-redis用于整合Spring Boot和Redis,spring-session-data-redis集当作了spring-session和spring-data-redis,供给了session与redis的整合方案。
接下来我们建立一个设置装备摆设类RedisSessionConfig,这个类利用@Configuration注解表白这是一个设置装备摆设类。在这个类上我们同时添加注解@EnableRedisHttpSession,暗示开启Redis的Session办理。若是需要设置掉效时候可以利用@EnableRedisHttpSession(maxInactiveIntervalInSeconds = 3600)暗示一小时后掉效。若同时需要设置Redis的定名空间则利用@EnableRedisHttpSession(maxInactiveIntervalInSeconds=3600, redisNamespace="{spring.session.redis.namespace}") ,此中{spring.session.redis.namespace}暗示从设置装备摆设文件中读取这个定名空间。
设置装备摆设完当作后我们写一个测试类SessionController,在这个类中我们写两个方式,一个方式用于往session中存数据,一个用于从session中取数据,代码如下图所示,我们存取请求的url。启动类很是简单,一般都是通用的,我们建立一个名为SpringbootApplication的启动类,利用main方式启动。
接下来我们利用Postman别离请求上面两个接口,先请求存数据接口,再请求取数据接口,成果如下图所示,我们可以看到数据已从redis中掏出。别的需要注重sessionId的值,这是session共享的关头。
为了验证两个办事是否共享了session,我们点窜项目标设置装备摆设文件,将办事端口server.port改为8090,然后再启动办事。此时我们不必在请求存数据的接口,只需要点窜请求端标语再一次请求取数据的接口即可。由下图可以看到两次请求的sessionId值不异,实现了session的共享。
以上我们完当作了SpringBoot整合SpringSeesion实现Redis缓存的功能,在此我们还要保举一个Redis的可视化东西RedisDesktopManager,我们可以设置装备摆设Redis数据库的毗连,然后便可以很是直不雅地查看到存储到Redis中的session了,如下图所示,session的定名空间是share,恰是从设置装备摆设文件中读取到的。
若是Redis办事器是良多项目共用的,很是建议设置装备摆设定名空间,不然同时打开多个项目标浏览器页面可能会导致session错乱的现象。
0 篇文章
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!