這篇文章帶給大家的內容是關於SpringBoot配置redis和分散式session-redis的方法(程式碼),有一定的參考價值,有需要的朋友可以參考一下,希望對你有幫助。
springboot專案和傳統專案配置redis的區別,更簡單方便,在分散式系統中,解決sesssion共享問題,可以用spring session redis。
1、pom.xml
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency> <dependency> <groupId>org.springframework.session</groupId> <artifactId>spring-session-data-redis</artifactId> </dependency>
2、rdis設定類別
import org.springframework.beans.factory.annotation.Value; import org.springframework.cache.annotation.CachingConfigurerSupport; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import redis.clients.jedis.JedisPoolConfig; import redis.clients.jedis.JedisShardInfo; import redis.clients.jedis.ShardedJedisPool; import java.util.ArrayList; import java.util.List; @Configuration public class RedisConfig extends CachingConfigurerSupport { @Value("${redis.host}") private String host; @Value("${redis.port}") private Integer port; @Value("${redis.maxTotal}") private Integer maxTotal; @Value("${redis.maxIdle}") private Integer maxIdle; @Value("${redis.maxWaitMillis}") private Long maxWaitMillis; @Bean public ShardedJedisPool shardedJedisPool() { JedisPoolConfig jedisPoolConfig = new JedisPoolConfig(); jedisPoolConfig.setMaxTotal(maxTotal); jedisPoolConfig.setMaxIdle(maxIdle); jedisPoolConfig.setMaxWaitMillis(maxWaitMillis); List<JedisShardInfo> jedisShardInfos = new ArrayList<>(); jedisShardInfos.add(new JedisShardInfo(host,port)); return new ShardedJedisPool(jedisPoolConfig, jedisShardInfos); } }
3、session redis 設定類別
import org.springframework.context.annotation.Configuration; import org.springframework.session.data.redis.config.annotation.web.http.EnableRedisHttpSession; /** * session共享 */ @Configuration @EnableRedisHttpSession(maxInactiveIntervalInSeconds=60*60) public class RedisSessionConfig { }
以上是SpringBoot設定redis和分散式session-redis的方法(程式碼)的詳細內容。更多資訊請關注PHP中文網其他相關文章!