我使用的是spring-session + redis,如下所示: http://docs.spring.io/spring-session/docs/current/reference/html5/guides/httpsession-xml.html
如何配置RedisHttpSessionConfigure,以便对于本地开发,不需要redis,应用程序将默认默认为容器会话处理?
答案 0 :(得分:1)
通常不推荐这样做,因为您的开发环境与生产环境不同。将您的开发机器指向Redis实例应该是非常简单的。
如果您需要支持,可以使用Spring profiles。例如,使用XML,您可以使用以下内容:
<beans profile="dev">
<bean id="springSessionRepositoryFilter" class="org.springframework.web.filter.CharacterEncodingFilter"/>
</beans>
<beans profile="production">
<context:annotation-config/>
<bean class="org.springframework.session.data.redis.config.annotation.web.http.RedisHttpSessionConfiguration"/>
<bean class="org.springframework.data.redis.connection.jedis.JedisConnectionFactory"/>
</beans>
关键是确保您的开发环境还有一个实现名为springSessionRepositoryFilter
的过滤器的Bean。在这个例子中,我使用CharacterEncodingFilter
,因为没有设置编码属性,所以不应该做任何事情,但可以随意替换你喜欢的任何内容。
接下来您需要做的是activate your environments。例如,您可以使用
-Dspring.profiles.active="production"