Spring整合redis(jedis)实现Session共享的过程

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

创新互联服务项目包括渠县网站建设、渠县网站制作、渠县网页制作以及渠县网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,渠县网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到渠县省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!

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

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

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

pom.xml依赖jar包

 
   
   redis.clients 
   jedis 
   2.9.0 
   
   
   org.springframework.session 
   spring-session-data-redis 
   1.2.1.RELEASE 
   

web.xml配置

<?xml version="1.0" encoding="UTF-8"?> 
 
  
  contextConfigLocation 
  classpath:spring-cfg.xml 
  
  
  
  springSessionRepositoryFilter 
  org.springframework.web.filter.DelegatingFilterProxy 
  
  
  springSessionRepositoryFilter 
  /* 
  
  
  
  encodingFilter 
  org.springframework.web.filter.CharacterEncodingFilter 
  true 
   
   encoding 
   UTF-8 
   
  
  
  encodingFilter 
  /* 
  
  
  
  org.springframework.web.context.ContextLoaderListener 
  
  
  
  SpringMVC 
  org.springframework.web.servlet.DispatcherServlet 
   
   contextConfigLocation 
   classpath:spring-mvc.xml 
   
  1 
  true 
  
  
  SpringMVC 
  / 
  
  
 

spring-cfg.xml配置文件

<?xml version="1.0" encoding="UTF-8"?> 
 
   
   
   
   
   
   
       
   
   
   
     
       
        classpath:jdbc.properties 
        classpath: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共享的过程

Spring整合redis(jedis)实现Session共享的过程

总结

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


本文题目:Spring整合redis(jedis)实现Session共享的过程
链接地址:http://hbruida.cn/article/ijhooc.html