標籤:pom .config tao server 網上 web config 啟動 ssi
http://www.open-open.com/lib/view/open1436322883958.html
一:
建立maven的webapp項目,加入spring session的相關依賴
pom.xml 如下:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.lala</groupId><artifactId>leshop</artifactId><packaging>war</packaging><version>0.0.1-SNAPSHOT</version><name>taobao Maven Webapp</name><url>http://maven.apache.org</url><dependencies><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.10</version><scope>test</scope></dependency><dependency><groupId>javax.servlet</groupId><artifactId>jsp-api</artifactId><version>2.0</version><scope>provided</scope></dependency><dependency><groupId>javax.servlet</groupId><artifactId>javax.servlet-api</artifactId><version>3.0.1</version><scope>provided</scope></dependency><dependency><groupId>org.springframework.session</groupId><artifactId>spring-session-data-redis</artifactId><version>1.0.1.RELEASE</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-web</artifactId><version>4.1.6.RELEASE</version></dependency><dependency><groupId>org.springframework.session</groupId><artifactId>spring-session</artifactId><version>1.0.1.RELEASE</version></dependency><dependency><groupId>com.orange.redis-embedded</groupId><artifactId>embedded-redis</artifactId><version>0.6</version></dependency></dependencies><build><finalName>leshop</finalName><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><version>3.3</version><configuration><source>1.8</source><target>1.8</target><verbose>true</verbose></configuration></plugin></plugins></build></project>
二:
配置redis環境
1:安裝redis,啟動
2:
package com.lala.config;import org.springframework.context.annotation.Bean;import org.springframework.data.redis.connection.jedis.JedisConnectionFactory;import org.springframework.session.data.redis.config.annotation.web.http.EnableRedisHttpSession;@EnableRedisHttpSessionpublic class SessionConfig {@Beanpublic JedisConnectionFactory connectionFactory(){JedisConnectionFactory connection = new JedisConnectionFactory();connection.setPort(6379);connection.setHostName("192.168.1.106");return connection;}}
package com.lala.config;import org.springframework.session.web.context.AbstractHttpSessionApplicationInitializer;public class SessionInitializer extends AbstractHttpSessionApplicationInitializer {public SessionInitializer() {super(SessionConfig.class);}}
三:
最後,在servlet或者action裡面
Integer uid = Integer.valueOf(req.getParameter("uid"));req.getSession().setAttribute("user", new User(uid, "張三", "這裡是redis的"));
執行之後,發現session已經儲存在redis裡面了。
這種做法,不需要依賴具體的容器。放到任何容器裡面都可以使用。
不像網上的做法,使用其他的jar,還需要配置tomcat。這種做法,不支援其他的web server
Spring session redis