Spring Session实现分布式session的简单示例

 更新时间:2017年05月10日 08:29:50   作者:二十六度半  
本篇文章主要介绍了Spring Session实现分布式session的简单示例,具有很好的参考价值。下面跟着小编一起来看下吧

前面有用 tomcat-redis-session-manager来实现分布式session管理,但是它有一定的局限性,主要是跟tomcat绑定太紧了,这里改成用Spring Session来管理分布式session,Spring Session就完全实现了与具体的容器无关,如果需要了解如何用tomcat-redis-session-manager实现分分布式session,请看我之前的文章,下面正式进入主题,Spring Session项目搭建。

1. 引入Spring Session maven依赖

<!-- spring session begin -->
  <dependency>
   <groupId>redis.clients</groupId>
   <artifactId>jedis</artifactId>
   <version>2.9.0</version>
  </dependency>
  <dependency>
   <groupId>org.springframework.data</groupId>
   <artifactId>spring-data-redis</artifactId>
   <version>1.5.2.RELEASE</version>
  </dependency>
  <dependency>
   <groupId>org.springframework.session</groupId>
   <artifactId>spring-session</artifactId>
   <version>1.3.1.RELEASE</version>
  </dependency>
  <!-- spring session end -->

2. Spring配置文件中添加Spring Session相关配置(这里重点体现Spring Session,因此并没有列出redis相关配置,需要可参考实例代码)

 <!-- Spring Session begin -->
 <bean id="redisHttpSessionConfiguration"
  class="org.springframework.session.data.redis.config.annotation.web.http.RedisHttpSessionConfiguration">
  <property name="maxInactiveIntervalInSeconds" value="1800" />
 </bean>
 <!-- Spring Session end -->

3. 在web.xml中配置Spring Session的Filter,它必须放在所有Filter的前面

<!-- 添加一个session代理filter,来包装Servlet的getSession,需要放在所有filter链最前面 -->
 <filter>
  <filter-name>springSessionRepositoryFilter</filter-name>
  <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
 </filter>
 <filter-mapping>
  <filter-name>springSessionRepositoryFilter</filter-name>
  <url-pattern>/*</url-pattern>
 </filter-mapping>

这几乎就是所有的步骤了,是不是感觉很简单呢?赶快自己动手试一试吧,看起来高大上的分布式Session就这样被Spring Session搞定了!

下面是我的github源码地址:

https://github.com/13babybear/bounter-springsession

源码下载

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持脚本之家!

相关文章

  • java中Pulsar InterruptedException 异常

    java中Pulsar InterruptedException 异常

    这篇文章主要为大家介绍了java中Pulsar InterruptedException 异常分析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-02-02
  • Java HttpURLConnection使用方法与实例演示分析

    Java HttpURLConnection使用方法与实例演示分析

    这篇文章主要介绍了Java HttpURLConnection使用方法与实例演示,HttpURLConnection一个抽象类是标准的JAVA接口,该类位于java.net包中,它提供了基本的URL请求,响应等功能,下面我们来深入看看
    2023-10-10
  • SpringBoot结合Redis配置工具类实现动态切换库

    SpringBoot结合Redis配置工具类实现动态切换库

    本文主要介绍了SpringBoot结合Redis配置工具类实现动态切换库,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-08-08
  • Java中的深拷贝和浅拷贝介绍

    Java中的深拷贝和浅拷贝介绍

    对象拷贝(Object Copy)就是将一个对象的属性拷贝到另一个有着相同类类型的对象中去。在程序中拷贝对象是很常见的,主要是为了在新的上下文环境中复用对象的部分或全部 数据。Java中有三种类型的对象拷贝:浅拷贝(Shallow Copy)、深拷贝(Deep Copy)、延迟拷贝(Lazy Copy)
    2014-03-03
  • java查找图中两点之间所有路径

    java查找图中两点之间所有路径

    这篇文章主要为大家详细介绍了java查找图中两点之间所有路径,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-01-01
  • Java实现对视频进行截图的方法【附ffmpeg下载】

    Java实现对视频进行截图的方法【附ffmpeg下载】

    这篇文章主要介绍了Java实现对视频进行截图的方法,结合实例形式分析了Java使用ffmpeg针对视频进行截图的相关操作技巧,并附带ffmpeg.exe文件供读者下载使用,需要的朋友可以参考下
    2018-01-01
  • jdbc实现宠物商店管理系统

    jdbc实现宠物商店管理系统

    这篇文章主要为大家详细介绍了jdbc实现宠物商店管理系统,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-10-10
  • 使用Post方式提交数据到Tomcat服务器的方法

    使用Post方式提交数据到Tomcat服务器的方法

    这篇将介绍使用Post方式提交数据到服务器,由于Post的方式和Get方式创建Web工程是一模一样的,只用几个地方的代码不同,这篇文章主要介绍了使用Post方式提交数据到Tomcat服务器的方法,感兴趣的朋友一起学习吧
    2016-04-04
  • druid ParserException类错误问题及解决

    druid ParserException类错误问题及解决

    这篇文章主要介绍了druid ParserException类错误问题及解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-12-12
  • java支付宝即时到帐提交订单功能

    java支付宝即时到帐提交订单功能

    这篇文章主要为大家详细介绍了java支付宝即时到帐提交订单功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-08-08

最新评论