getMaxInactiveInterval returns 与 application.properties 中配置的值不同的值

getMaxInactiveInterval returns a different value than the value configured in application.properties

我有一个 SpringBoot 应用程序,在 application.properties:

中设置了会话超时
server.servlet.session.timeout=2000

但是当我在创建 HttpSession 之后检查值时:

System.out.println("getMaxInactiveInterval: " + request.getSession().getMaxInactiveInterval());

这是打印出来的:

getMaxInactiveInterval: 1980

为什么没有按配置打印 2000?

我试过一个测试,我没有设置 server.servlet.session.timeout,并且 1800 打印在控制台上。所以我知道我的 属性 有一些效果。

看起来容器对值进行了四舍五入。

例如 2000 等于 33.33 分钟,因此容器将该值四舍五入为 33 分钟,即 1980 秒。