}
【3】通过ServletListenerRegistrationBean
注册自定义的Listener
。
//创建自定义的Listener监听
public class myListener implements ServletContextListener {
@Override
public void contextInitialized(ServletContextEvent servletContextEvent) {
System.out.printf("服务启动");
}
@Override
public void contextDestroyed(ServletContextEvent servletContextEvent) {
System.out.printf("服务销毁");
}
}
//通过配置类注入自定义的listener
@Configuration
public class MyMvcConfig extends WebMvcConfigurerAdapter {
public ServletListenerRegistrationBean myListener(){
ServletListenerRegistrationBean<MyListener> servletListenerRegistrationBean = new ServletListenerRegistrationBean<>(new MyListener());
return servletListenerRegistrationBean;
}
三、使用其他 Servlet容器:Jetty(长连接引用)、Undertow(不支持JSP)
【1】我们在定制嵌入式的Servlet
容器时,会传入ConfigurableEmbeddedServletContainer
类,我们通过Ctrl+T
查看此可配置嵌入式类容器中可以配置Tomcat
、Jetty
和Undertow
。
//ConfigurableEmbeddedServletContainer
@Bean
public EmbeddedServletContainerCustomizer embeddedServletContainerCustomizer(){
return new EmbeddedServletContainerCustomizer() {
@Override
public void customize(ConfigurableEmbeddedServletContainer container) {
container.setPort(8082);
}
};
}