我也遇到了同样的问题loadOnStartup
。我通过使用自定义解决它beanfactoryPostProcessor
修改BeanDeFinition
的ServletRegistrationBean
那个spring启动创建用于注册DispatcherServlet
。
在类中使用以下代码时loadOnStartup
,将DispatcherServlet
在Spring Boot应用程序中为设置代码@Configuration
:
@Bean
public static beanfactoryPostProcessor beanfactoryPostProcessor() {
return new beanfactoryPostProcessor() {
@Override
public void postProcessbeanfactory(
ConfigurableListablebeanfactory beanfactory) throws BeansException {
BeanDeFinition bean = beanfactory.getBeanDeFinition(
DispatcherServletAutoConfiguration.DEFAULT_DISPATCHER_SERVLET_REGISTRATION_BEAN_NAME);
bean.getPropertyValues().add("loadOnStartup", 1);
}
};
}