适用范围:springmvc项目,分布式集群。
1.安装redis,不赘述,参见具体安装文档。
或点击这里查看步骤:http://stamen.iteye.com/blog/1903867/
2.所依赖的jar包,我们这边功能用到的三个jar包信息如下:
<!-- redis-springsession -->
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>2.8.1</version>
</dependency>
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-redis</artifactId>
<version>1.7.1.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.session</groupId>
<artifactId>spring-session</artifactId>
<version>1.2.1.RELEASE</version>
</dependency>
<!-- redis -->
3.在项目工程的web.xml中添加filter信息。
如下:
<!-- redis 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>
<!-- redis filter -->
3.需要在配置文件中添加spring-mvc-session.xml文件[文件名字无所谓,确保这个xml能够加载进项目中就可以了],内容如下:
<?xml version="1.0" encoding="UTF-8" ?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd
">
<context:annotation-config/>
<bean class="org.springframework.session.data.redis.config.annotation.web.http.RedisHttpSessionConfiguration">
<!--session 过期设置 单位 秒-->
<property name="maxInactiveIntervalInSeconds" value="1800" />
</bean>
<bean id="jedisConnectionFactory"
class="org.springframework.data.redis.connection.jedis.JedisConnectionFactory">
<!-- 配置hostName,port,password等信息配置 -->
<property name="hostName" value="127.0.0.1" />
<property name="port" value="6379" />
<property name="password" value="password"/>
<property name="poolConfig" ref="poolConfig"></property>
</bean>
<bean id="poolConfig" class="redis.clients.jedis.JedisPoolConfig">
<property name="maxTotal" value="100"/>
<property name="maxIdle" value="5"/>
<property name="minIdle" value="1"/>
<property name="maxWaitMillis" value="6000"/>
</bean>
</beans>
在配置过程中,不同的项目可能会出现不同错误,定位问题,找到原因,一个一个解决。