注意:存入session的bean要序列化
1、導入依賴
<!-- Spring session -->
<dependency>
<groupId>org.springframework.session</groupId>
<artifactId>spring-session-data-redis</artifactId>
<version>1.2.1.RELEASE</version>
</dependency>
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>2.8.1</version>
</dependency>
2、配置spring-session.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"
xmlns:p="http://www.springframework.org/schema/p"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd"
>
<bean id="poolConfig" class="redis.clients.jedis.JedisPoolConfig"
p:maxIdle="300" p:maxWaitMillis="1000" p:testOnBorrow="true">
</bean>
<!-- 配置檔案 -->
<context:property-placeholder location="classpath:redis.properties" ignore-unresolvable="true"/>
<!-- 添加RedisHttpSessionConfiguration用于session共享 -->
<bean class="org.springframework.session.data.redis.config.annotation.web.http.RedisHttpSessionConfiguration"/>
<bean id="jedisConnectionFactory" class="org.springframework.data.redis.connection.jedis.JedisConnectionFactory"
p:hostName="${redis.host}"
p:port="${redis.port}"
p:password="${redis.password}" p:poolConfig-ref="poolConfig"
p:usePool="true"
p:database="${redis.database}"
p:timeout="3000"/>
</beans>
注意:加入掃描
<!--spring session -->
<import resource="classpath:dev/spring-session.xml"/>
3、web.xml添加過濾器
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<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-sessipn.xml檔案
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath*:spring/*.xml</param-value>
</context-param>
參考:https://www.cnblogs.com/jiafuwei/p/6425604.html