このバージョンはまだ開発中であり、まだ安定しているとは見なされていません。最新の安定バージョンについては、Spring Boot 3.5.7 を使用してください! |
Spring Session
Spring Boot は、様々なデータストアに対して Spring Session の自動構成機能を提供します。サーブレット Web アプリケーションを構築する際には、以下のストアを自動構成できます。
Redis
JDBC
サーブレットの自動構成により、@Enable*HttpSession を使用する必要がなくなります。
クラスパスに単一の Spring Session モジュールが存在する場合、Spring Boot はそのストア実装を自動的に使用します。複数の実装がある場合、Spring Boot は特定の実装を選択するために次の順序を使用します。
Redis
JDBC
If neither Redis nor JDBC are available, we do not configure a
SessionRepository(Javadoc) 。
When building a reactive web application, the Redis store can be auto-configured. This replaces the need to use @EnableRedisWebSession.
各ストアには特定の追加設定があります。たとえば、次の例に示すように、JDBC ストアのテーブルの名前をカスタマイズできます。
プロパティ
YAML
spring.session.jdbc.table-name=SESSIONSspring:
session:
jdbc:
table-name: "SESSIONS" セッションのタイムアウトを設定するには、spring.session.timeout プロパティを使用できます。そのプロパティがサーブレット Web アプリケーションで設定されていない場合、自動構成は server.servlet.session.timeout の値にフォールバックします。
@Enable*HttpSession (サーブレット)または @EnableRedisWebSession (リアクティブ)を使用して、Spring Session の構成を制御できます。これにより、自動構成がバックオフします。Spring Session は、前述の構成プロパティではなく、アノテーションの属性を使用して構成できます。