SpringBoot之Servlet、Filter、Listener配置
https://blog.csdn.net/u010922732/article/details/91048683
在SpringBoot中是不需要配置web.xml的,那么原来在web.xml中配置的Servlet、Filter、Listener现在怎么弄呢?
SpringBoot提供了三种Bean FilterRegistrationBean、ServletRegistrationBean、ServletListenerRegistrationBean
分别对应配置原生的Filter、Servlet、Listener。
//例如自己下面新建的监听器
public class RequestListener implements ServletRequestListener {
public void requestInitialized(ServletRequestEvent arg0) {
ThreadContext.put("id", UUID.randomUUID().toString());
}
public void requestDestroyed(ServletRequestEvent arg0) {
ThreadContext.clearMap();
}
}
@Bean
public ServletListenerRegistrationBean registerListener() {
// 创建Listener注册Bean
ServletListenerRegistrationBean<EventListener> registration = new ServletListenerRegistrationBean<>();
// 创建自定义的Listener对象
SecondListener listener = new SecondListener();
// 注册Listener
registration.setListener(listener);
// 设置排序,在存在多个Listener实例的情况下确定Listener的执行顺序
registration.setOrder(1);
return registration;
}

浙公网安备 33010602011771号