Spring Boot передбачає автоконфігурацію Spring Session для широкого спектру сховищ даних. При створенні вебсерверетної програми такі сховища можуть бути автоматично налаштовані:

  • JDBC

  • Redis

  • Hazelcast

  • MongoDB

До того ж, Spring Boot для Apache Geode передбачає автоконфігурацію для використання Apache Geode як сховища сесій.

Автоконфігурація сервлета замінює необхідність використання анотації @Enable*HttpSession.

Під час створення реактивної вебпрограми наступні сховища можуть бути автоматично налаштовані:

  • Redis

  • MongoDB

Реактивна автоконфігурація замінює необхідність використання анотації @Enable*WebSession.

Якщо в classpath є один модуль Spring Session, Spring Boot автоматично використовує цю реалізацію сховища. Якщо є більше однієї реалізації, необхідно вибрати StoreType, який ти хочеш використовувати для зберігання сесій. Наприклад, щоб використовувати JDBC як бекенд-сховище, можна налаштувати програму таким чином:

Properties
spring.session.store-type=jdbc
Yaml
spring:
  session:
    store-type: "jdbc"
Можна вимкнути Spring Session, встановивши для store-type значення none.

Кожне сховище має певні додаткові параметри. Наприклад, можна налаштувати ім'я таблиці для сховища JDBC, як показано в наведеному нижче прикладі:

Properties
spring.session.jdbc.table-name=SESSIONS
Yaml
spring:
  session:
    jdbc:
      table-name: "SESSIONS"

Для встановлення часу очікування сесії можна використовувати властивість spring.session.timeout. Якщо цю властивість не інсталювати в вебсервері, автоконфігурація повернеться до значення server.servlet.session.timeout.

Можна керувати конфігурацією Spring Session, використовуючи анотацію @Enable*HttpSession (серветний додаток) або анотацію @Enable*WebSession (реактивний додаток). Це призведе до відкату автоконфігурації. Потім Spring Session можна буде налаштувати, використовуючи атрибути анотації, а не описані раніше конфігураційні властивості.