pom.xml
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.1.RELEASE</version>
</parent>
色々ぐぐっていると、spring.session.timeout
にはserver.servlet.session.timeout
の値(1系ではserver.session.timeout
)が設定される、と書いてある。これってどうやってるんだ? と思ったんで該当部分のコードを読んだ。
SessionProperties
package org.springframework.boot.autoconfigure.session;
@ConfigurationProperties(prefix = "spring.session")
public class SessionProperties {
// (略)
public SessionProperties(ObjectProvider<ServerProperties> serverProperties) {
ServerProperties properties = serverProperties.getIfUnique();
Session session = (properties == null ? null
: properties.getServlet().getSession());
this.timeout = (session == null ? null : session.getTimeout());
}
なんのことはなく、SessionProperties
のコンストラクタでtimeout
にServerPropertie.getServlet().getSession().getTimeout()
の値を設定しているだけであった。