Переглянути джерело

Merge remote-tracking branch 'origin/master'

master
CMM 1 рік тому
джерело
коміт
6e3eb907ba
3 змінених файлів з 43 додано та 4 видалено
  1. +4
    -4
      pmapi/src/main/java/com/ningdatech/pmapi/user/security/auth/config/RedisSessionConfig.java
  2. +38
    -0
      pmapi/src/main/java/com/ningdatech/pmapi/user/security/auth/config/RedisSessionTimeoutConfig.java
  3. +1
    -0
      pmapi/src/main/resources/application-dev.yml

+ 4
- 4
pmapi/src/main/java/com/ningdatech/pmapi/user/security/auth/config/RedisSessionConfig.java Переглянути файл

@@ -17,10 +17,8 @@ import org.springframework.session.web.http.DefaultCookieSerializer;
* @Date 2020/7/29 9:46 上午
* @Version 1.0
**/

@Configuration
// 设置session的过期时间为一天
@EnableRedisHttpSession(maxInactiveIntervalInSeconds = 24 * 60 * 60 * 10)
@EnableRedisHttpSession
public class RedisSessionConfig {

@Bean
@@ -30,9 +28,11 @@ public class RedisSessionConfig {

// 创建 DefaultCookieSerializer 对象
DefaultCookieSerializer cookieSerializer = new DefaultCookieSerializer();
sessionIdResolver.setCookieSerializer(cookieSerializer); // 设置到 sessionIdResolver 中
sessionIdResolver.setCookieSerializer(cookieSerializer);
// 设置到 sessionIdResolver 中
cookieSerializer.setCookieName(BizConst.COOKIE_KEY);
cookieSerializer.setCookieMaxAge(SessionTimeConstant.SESSION_TIME_SECONDS);
return sessionIdResolver;
}

}

+ 38
- 0
pmapi/src/main/java/com/ningdatech/pmapi/user/security/auth/config/RedisSessionTimeoutConfig.java Переглянути файл

@@ -0,0 +1,38 @@
package com.ningdatech.pmapi.user.security.auth.config;

import lombok.RequiredArgsConstructor;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.autoconfigure.AutoConfigureAfter;
import org.springframework.context.annotation.Configuration;
import org.springframework.session.data.redis.RedisIndexedSessionRepository;
import org.springframework.session.data.redis.config.annotation.web.http.RedisHttpSessionConfiguration;

import javax.annotation.PostConstruct;

/**
* <p>
* 设置session的过期时间为一天
* </p>
*
* @Author LiuXinXin
* @Date 2020/7/29 9:46 上午
* @Version 1.0
**/
@Configuration
@RequiredArgsConstructor
@AutoConfigureAfter(RedisHttpSessionConfiguration.class)
public class RedisSessionTimeoutConfig {

@Value("${spring.session.timeout:60 * 60 * 4}")
private Integer springSessionTimeout;

private final RedisHttpSessionConfiguration redisHttpSessionConfiguration;
private final RedisIndexedSessionRepository redisIndexedSessionRepository;

@PostConstruct
public void sessionTimeoutTime() {
redisHttpSessionConfiguration.setMaxInactiveIntervalInSeconds(springSessionTimeout);
redisIndexedSessionRepository.setDefaultMaxInactiveInterval(springSessionTimeout);
}

}

+ 1
- 0
pmapi/src/main/resources/application-dev.yml Переглянути файл

@@ -11,6 +11,7 @@ spring:
store-type: redis
redis:
namespace: "spring:session"
timeout: 864000
redis:
timeout: 5000
host: 47.98.125.47


Завантаження…
Відмінити
Зберегти