Spring Boot exposes many of the server properties that can be used to configure things such as PORT, SSL, and others by simply setting the values in application.properties. However, if we need to do any more complex tuning, Spring Boot provides us with a ServletWebServerFactory interface to programmatically define our configuration.
Even though the session timeout can be easily configured by setting the server.session.timeout property in application.properties to our desired value in seconds, we will do it using ServletWebServerFactory to demonstrate how it is done.