springBoot中怎么配置redis管理session,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
创新互联建站2013年开创至今,是专业互联网技术服务公司,拥有项目成都网站建设、成都网站设计网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元潮南做网站,已为上家服务,为潮南各地企业和个人服务,联系电话:028-86922220
1.引入maven依赖
org.springframework.boot spring-boot-starter-data-redis org.springframework.session spring-session-data-redis
2.写入关键配置
spring.session.store-type=redis #配置由redis管理session #redis连接信息 spring.redis.host=127.0.0.1 spring.redis.port=6379 spring.redis.timeout=600000 spring.redis.password=
3.加入关键配置代码
@Configuration @EnableRedisHttpSession(maxInactiveIntervalInSeconds=60*60*4,redisNamespace = "spring:session:tjzz:application")//设置session过期时间,设置存储路径 @ConfigurationProperties(prefix = "spring.redis") public class SessionConfig { @Value("${spring.redis.host}") private String host; @Value("${spring.redis.port}") private int port; @Value("${spring.redis.timeout}") private int timeout; @Value("${spring.redis.password}") private String password; /* * 配置redis序列化方式 * */ @Bean(name = "springSessionDefaultRedisSerializer") public GenericJackson2JsonRedisSerializer getGenericJackson2JsonRedisSerializer() { return new GenericJackson2JsonRedisSerializer(); } /* * cookie Base64解码 * */ @Bean public DefaultCookieSerializer getDefaultCookieSerializer(){ DefaultCookieSerializer cookieSerializer = new DefaultCookieSerializer(); cookieSerializer.setUseBase64Encoding(false); return cookieSerializer; } }
4.测试类
@RestController public class SessionController { @RequestMapping(value = "/get-session-id.action",method = RequestMethod.GET) public String getSessionId(){ HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); HttpSession session = request.getSession(); String sessionId=""; Object temp=session.getAttribute("USER");//session中存储userCode的key为USER System.out.println(temp.toString()); sessionId=session.getId(); return sessionId; } }
看完上述内容,你们掌握springBoot中怎么配置Redis管理session的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注创新互联行业资讯频道,感谢各位的阅读!