18.玩转Spring Boot 注册Servlet、Filter、Listener

来源:互联网 发布:知水牌富氢水杯的价格 编辑:程序博客网 时间:2024/06/05 08:54

玩转Spring Boot 注册Servlet、Filter、Listener


      在Servlet 3.0之前我们都是使用web.xml进行配置,需要增加Servlet、Filter或者Listener都是在web.xml增加相应的配置即可。这里我们使用的是使用Java配置来注册Servlet、Filter、Listener。

1.注册Servlet

      (1)使用ServletRegistrationBean注册
  使用ServletRegistrationBean注册只需要在@Configuration类中加入即可,例如以下代码:
@Beanpublic ServletRegistrationBean myServlet() {ServletRegistrationBean myServlet = new ServletRegistrationBean();myServlet.addUrlMappings("/servlet");myServlet.setServlet(new MyServlet());return myServlet;}

      (2)使用@WebServlet
  使用@WebServlet注册,需要在Servlet类上使用该注解即可,但是需要在@Configuration类中使用Spring Boot提供的注解@ServletComponentScan扫描注册相应的Servlet。

2.注册Filter

      (1)使用FilterRegistrationBean注册
  使用FilterRegistrationBean注册Filter,只需要在@Configuration类中加入即可,例如以下代码:
@Beanpublic FilterRegistrationBean myFilter() {FilterRegistrationBean myFilter = new FilterRegistrationBean();myFilter.addUrlPatterns("/*");myFilter.setFilter(new MyFilter());return myFilter;}

      (2)使用@WebFilter
  使用@WebFilter注册,需要在Filter类上使用该注解即可,但是需要在@Configuration类中使用Spring Boot提供的注解@ServletComponentScan扫描注册相应的Filter。

3.注册Listener

      (1)使用ServletListenerRegistrationBean注册
  使用ServletListenerRegistrationBean注册Listener只需要在@Configuration类中加入即可,例如以下代码:
@Beanpublic ServletListenerRegistrationBean<MyListener> myServletListener() {ServletListenerRegistrationBean<MyListener> myListener = new ServletListenerRegistrationBean<MyListener>();myListener.setListener(new MyListener());return myListener;}

      (2)使用@WebListener
  使用@WebListener注册,需要在Filter类上使用该注解即可,但是需要在@Configuration类中使用Spring Boot提供的注解@ServletComponentScan扫描注册相应的Listener。
1 0
原创粉丝点击