17

查看 Spring Boot 文档,我只找到了使用 Redis 会话的示例,是否可以在没有Redis 的情况下使用它?

4

3 回答 3

13

正如另一个答案中所说:是的,您可以通过更改SessionRepository实现来更改 Session 持久性后端。

而且,Spring-Session 提供了一个内置的替代方案MapSessionRepository,您可以将会话保存在Map.

在 Spring Session 的示例中,有一个使用 Hazelcast作为持久化后端的示例。它正在利用上述MapSessionRepositoryMapHazelcast 创建的实例。

于 2015-10-28T06:36:23.040 回答
6

我知道我对这个问题有点晚了,但只是发布以防其他人偶然发现这个问题。

从 Spring Session 1.2.0 开始,内置了一个 JDBC 会话存储库,可以像这样使用:

@Configuration
@EnableJdbcHttpSession // default session length and DB table name can be included on the annotation
public class SessionConfiguration {
    // code goes here if needed
}

在 Spring Session JAR 中,org.springframework.session.jdbc 包具有 SQL 脚本,用于为许多不同的 DBMS(MySQL、Postgre 等)创建表结构。

我在 Spring Session 1.2.0 里程碑版本中开始使用 JDBC 功能,在此过程中我没有遇到任何问题。

于 2016-05-26T19:26:35.080 回答
0

您可以使用任何您想要存储会话的技术。Spring Session 提供了SessionRepository你必须实现的接口来存储和检索会话。因此,只需使用您的存储技术创建该接口的实现,并将该实现配置为 Spring bean。

于 2015-10-28T05:51:06.827 回答