- Spring-Session 是 Spring 提供一套管理用户 Session 的实现方案,使用 Spring-Session 之后,默认 WEB 容器,比如 Tomcat,产生的 Session 将会被 Spring-Session 接管
spring集成spring-session&spirng-data-redis xml配置方式
1、jar包引用,修改pom.xml
注意引用的版本,当前spring版本4.3.10.RELEASE<!-- spring session start--><dependency><groupId>org.springframework.session</groupId><artifactId>spring-session</artifactId><version>1.3.5.RELEASE</version></dependency><dependency><groupId>org.springframework.data</groupId><artifactId>spring-data-redis</artifactId><version>1.8.1.RELEASE</version></dependency><dependency><groupId>redis.clients</groupId><artifactId>jedis</artifactId><version>2.9.0</version></dependency><!-- spring session end-->
2、添加redis.properties
```Redis数据库索引(默认为0)
redis.database=6Redis服务器地址
redis.hostname=127.0.0.1Redis服务器连接端口
redis.port=6379Redis服务器连接密码(默认为空)
redis.password=123456连接池最大连接数(使用负值表示没有限制)
redis.maxTotal=300连接池最大阻塞等待时间(使用负值表示没有限制)
redis.maxWait=10000连接池中的最大空闲连接
redis.maxIdle=100连接池中的最小空闲连接
redis.minIdle=10连接超时时间(毫秒)
redis.timeout=10000
最大过期时间,默认 30 分钟 (秒)
redis.maxInactiveIntervalInSeconds=86400
redis 的 session 命名空间,默认是 spring:session + namespace + :
redis.namespace=
<a name="yCTJl"></a>## 3、修改applicationContext.xml```xml<!-- Spring-Session 配置开始 --><bean id="jedisPoolConfig" class="redis.clients.jedis.JedisPoolConfig"><!-- 最大连接数 --><property name="maxTotal" value="${redis.maxTotal}"></property><!-- 最大等待时间 --><property name="maxWaitMillis" value="${redis.maxWait}"></property><!-- 最大空闲数 --><property name="maxIdle" value="${redis.maxIdle}"></property><property name="minIdle" value="${redis.minIdle}"></property></bean><bean id="jedisConnectionFactory" class="org.springframework.data.redis.connection.jedis.JedisConnectionFactory"><property name="hostName" value="${redis.hostname}" /><property name="port" value="${redis.port}" /><property name="password" value="${redis.password}" /><property name="database" value="${redis.database}" /><property name="timeout" value="${redis.timeout}" /><property name="poolConfig" ref="jedisPoolConfig" /></bean><bean id="redisTemplate" class="org.springframework.data.redis.core.StringRedisTemplate"><property name="connectionFactory" ref="jedisConnectionFactory" /></bean><!-- 将session放入redis --><bean id="redisHttpSessionConfiguration" class="org.springframework.session.data.redis.config.annotation.web.http.RedisHttpSessionConfiguration"><property name="maxInactiveIntervalInSeconds" value="${redis.maxInactiveIntervalInSeconds}" /><property name="redisNamespace" value="${redis.namespace}" /></bean><!-- Spring-Session 配置结束 -->
4、修改web.xml
filter放在第一位
<!-- Spring Session配置开始 --><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><!-- Spring Session配置结束 -->
