springboot配置请求超时时间(Http会话和接口访问)
1、配置Http会话超时
可以通过两种方式为Spring Boot应用程序配置HTTP会话超时。
1.1 application.properties中配置会话超时
最简单的方法是在你的application.properties中加入参数server.servlet.session.timeout。
server:
servlet:
session:
# 配置会话超时
timeout: 120s还要注意的是,Tomcat不允许你将超时时间设置得少于60秒。
1.2 以程序方式配置会话超时
假设我们想让我们的HttpSession只持续两分钟。为了实现这一点,我们可以在我们的WebConfiguration类中添加一个EmbeddedServletContainerCustomizerBean,内容如下。
@Configuration
public class WebConfiguration {
@Bean
public EmbeddedServletContainerCustomizer embeddedServletContainerCustomizer() {
return new EmbeddedServletContainerCustomizer() {
@Override
public void customize(ConfigurableEmbeddedServletContainer container) {
container.setSessionTimeout(2, TimeUnit.MINUTES);
}
};
}
}这里再给出一个使用Java 8和lambda表达式的捷径写法。
public EmbeddedServletContainerCustomizer embeddedServletContainerCustomizer() {
return (ConfigurableEmbeddedServletContainer container) -> {
container.setSessionTimeout(2, TimeUnit.MINUTES);
};
}在应用程序启动期间,Spring Boot自动配置检测到EmbeddedServletContainerCustomizer,并调用customize(…)方法,传递对Servlet容器的引用。
2、配置接口访问超时
SpringBoot设置接口访问超时时间有两种方式
2.1 配置文件方式
在配置文件application.properties中加了spring.mvc.async.request-timeout=120000,意思是设置超时时间为120000ms即120s
# [设置接口的超时时间] spring.mvc.async.request-timeout=120000
2.2 配置Config配置类
还有一种就是在config配置类中加入:
public class WebMvcConfig extends WebMvcConfigurerAdapter {
@Override
public void configureAsyncSupport(final AsyncSupportConfigurer configurer) {
configurer.setDefaultTimeout(20000);
configurer.registerCallableInterceptors(timeoutInterceptor());
}
@Bean
public TimeoutCallableProcessingInterceptor timeoutInterceptor() {
return new TimeoutCallableProcessingInterceptor();
}
}到此这篇关于springboot配置请求超时时间(Http会话和接口访问)的文章就介绍到这了,更多相关springboot 请求超时时间内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
SpringBoot配置文件application.properties的使用
这篇文章主要介绍了SpringBoot配置文件application.properties的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教2024-05-05
springboot静态资源(static)无法访问问题404及解决过程
文章浏览阅读7.8k次。本文介绍了SpringBoot项目中遇到的静态资源无法访问的问题及解决办法。主要从拦截器配置、静态资源映射配置和pom.xml文件配置三个方面进行详细说明。2026-05-05


最新评论