我们有一个不使用Spring会话的用例,即@EnableRedisHttpSession
即使Spring Session和Spring boot在类路径中也没有注释。我们曾经通过拥有一个自定义属性spring.session.enabled
并在具有注释@ConditionalOnProperty
的类上使用来做到这一点@EnableRedisHttpSession
。这在Spring Boot 1.2.7中有效。但是在Spring Boot 1.3.0中,SessionAutoConfiguration
该类具有@EnableRedisHttpSession
注释。
有没有办法禁止使用该类?
要禁用Spring Session的Spring Boot自动配置:
@SpringBootApplication(exclude = {SessionAutoConfiguration.class}) public class Application { ... }
然后,要根据属性启用Spring Session(例如,您可能希望在开发中禁用它,但在生产中启用它):
@Configuration @ConditionalOnProperty(value = "spring.session.enabled", havingValue = "true", matchIfMissing = false) @EnableRedisHttpSession public class HttpSessionConfig { ... }
我有相同的问题,通过评论,我能够得到我的答案,所以我将其放在此处,因此该问题被标记为已回答: