Spring Session

spring session

Build Status

Revved up by Develocity

Spring Session provides an API and implementations for managing a user’s session information, while also making it trivial to support clustered sessions without being tied to an application container specific solution. It also provides transparent integration with:

  • HttpSession - allows replacing the HttpSession in an application container (i.e. Tomcat) neutral way, with support for providing session IDs in headers to work with RESTful APIs.

  • WebSocket - provides the ability to keep the HttpSession alive when receiving WebSocket messages

  • WebSession - allows replacing the Spring WebFlux’s WebSession in an application container neutral way.

Modules

This Spring Session repository consists of the following modules:

  • Spring Session Core - provides core Spring Session functionalities and APIs

  • Spring Session Data Redis - provides SessionRepository and ReactiveSessionRepository implementation backed by Redis and configuration support

  • Spring Session JDBC - provides SessionRepository implementation backed by a relational database and configuration support

  • Spring Session Hazelcast - provides SessionRepository implementation backed by Hazelcast and configuration support

  • Spring Session MongoDB - provides SessionRepository implementation backed by MongoDB and configuration support

Additional Spring Session modules can be found in the spring-session-data-geode repository.

Getting Started

We recommend you visit the Spring Session Reference and look through the "Samples and Guides" section to see which one best suits your needs.

Samples

Spring Session samples are available in the spring-session-samples directory.

Contributing

Please see our Contributing guidelines for information on how to report issues, enhancements or security vulnerabilities.

Building from Source

Spring Session uses a Gradle-based build system. In the instructions below, ./gradlew is invoked from the root of the source tree and serves as a cross-platform, self-contained bootstrap mechanism for the build.

Check out sources

git clone git@github.com:spring-projects/spring-session.git

Install all spring-\* jars into your local Maven cache

./gradlew install

Compile and test; build all jars, distribution zips, and docs

./gradlew build

Documentation

You can find the documentation, samples, and guides for using Spring Session on the Spring Session project site.

For more in depth information, visit the Spring Session Reference.

Code of Conduct

Please see our code of conduct.

License

Spring Session is Open Source software released under the Apache 2.0 license.