微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Spring整合redisjedis实现Session共享的过程

这篇文章主要介绍了Spring整合redis(jedis)实现Session共享,需要的朋友可以参考下

今天来记录一下自己在整合框架过程中所遇到的问题:

1.    在用redis实现session共享时,项目启动报 No bean named 'springSessionRepositoryFilter' is defined 异常

2.    在调用缓存工具类的时候显示注入的JedisPool为Null (一个跟spring扫描有关的细节错误

好了,开始上我整合的文件

pom.xml依赖jar包

redis.clientsjedis2.9.0org.springframework.sessionspring-session-data-redis1.2.1.RELEASE

web.xml配置

contextConfigLocationclasspath:spring-cfg.xmlspringSessionRepositoryFilterorg.springframework.web.filter.DelegatingFilterProxyspringSessionRepositoryFilter/*encodingFilterorg.springframework.web.filter.CharacterEncodingFiltertrueencodingUTF-8encodingFilter/*org.springframework.web.context.ContextLoaderListenerSpringMVCorg.springframework.web.servlet.dispatcherServletcontextConfigLocationclasspath:spring-mvc.xml1trueSpringMVC/

spring-cfg.xml配置文件

classpath:jdbc.propertiesclasspath:redis.properties

jdbc.properties

driverClassName=com.MysqL.jdbc.Driver validationQuery=SELECT 1 jdbc_url=jdbc:MysqL://localhost:3306/zyt_demo?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull jdbc_username=root jdbc_password=root

redis.properties

redis.isopen=on redis.host=127.0.0.1 redis.port=6379 redis.maxIdle=300 redis.maxActive=600 redis.maxWait=1000 redis.testOnBorrow=true redis.timeout=2000 #redis.password=

以上是整合的配置文件,其中有关redis的配置是整合成功的关键

问题总结

1.之前整合完启动项目报异常,是因为配置文件放置的位置问题,以至于启动不成功,多试几遍,以上的配置文件是可以用的

2.之前调用缓存工具类,显示注入JedisPool为空,在controller那边注入又有值,是因为我在controller那边调用工具类的方式是new出来的,所以导致spring在扫描那个工具类时丢失Jedispool注入,在controller中改用注入工具类的形式即可解决

例如:

总结

以上所述是小编给大家介绍的Spring整合redis(jedis)实现Session共享的过程,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对编程之家网站的支持

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐