小编今天带大家了解springboot项目怎么设置session的过期时间,文中知识点介绍的非常详细。觉得有帮助的朋友可以跟着小编一起浏览文章的内容,希望能够帮助更多想解决这个问题的朋友找到问题的答案,下面跟着小编一起深入学习“springboot项目怎么设置session的过期时间”的知识吧。
这里我们只介绍springboot2.0的session时间设置
Duration转换字符串方式,默认为正,负以-开头,紧接着P,(字母不区分大小写)D :天 T:天和小时之间的分隔符 H :小时 M:分钟 S:秒 每个单位都必须是数字,且时分秒顺序不能乱。
例如PT10M,就是设置为10分钟,
下面这种方式是设置24小时的

错误的设置是下面这种方式,这种是不起效果的
server.servlet.session.timeout=30s
或者使用第二种方式
session1.setMaxInactiveInterval(60*60);//设置session一小时后失效
springboot设置session失效的几种方式
如果是1.5.6版本
这里 可以在application中加上bean文件
package com.example.demo;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.context.embedded.ConfigurableEmbeddedServletContainer;
import org.springframework.boot.context.embedded.EmbeddedServletContainerCustomizer;
import org.springframework.context.annotation.Bean;
@SpringBootApplication
public class DemoApplication {undefined
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
//设置session过期时间
@Bean
public EmbeddedServletContainerCustomizer containerCustomizer() {
return new EmbeddedServletContainerCustomizer() {
public void customize(ConfigurableEmbeddedServletContainer container) {
container.setSessionTimeout(7200);// 单位为S
}
};
}
}

第二个
还可以设置
application.yml
server:
port: 8081
servlet:
session:
timeout: 60s

第三个
@RestController
public class HelloController {undefined
@PostMapping("test")
public Integer getTest(@RequestParam("nyy")String nn, HttpServletRequest httpServletRequest ){
HttpSession session = httpServletRequest.getSession();
session.setMaxInactiveInterval(60);
int maxInactiveInterval = session.getMaxInactiveInterval();
long lastAccessedTime = session.getLastAccessedTime();
return maxInactiveInterval;
}
}

springboot是什么
springboot一种全新的编程规范,其设计目的是用来简化新Spring应用的初始搭建以及开发过程,SpringBoot也是一个服务于框架的框架,服务范围是简化配置文件。
感谢大家的阅读,以上就是“springboot项目怎么设置session的过期时间”的全部内容了,学会的朋友赶紧操作起来吧。相信天达云小编一定会给大家带来更优质的文章。谢谢大家对天达云网站的支持!