spring boot学习笔记之与servlet、Filter、Listener集成
2019-06-28 07:58
357 查看
方法一:直接在spring boot入口类中注册Bean
[code]@Bean public MyServlet myServlet() {//注册Servlet return new MyServlet(); } @Bean public MyFilter myFilter() {//注册Filter return new MyFilter(); } @Bean public MyListener myListener() {//注册Listener return new MyListener(); }
方法二:通过在spring boot入口类中RegistrationBean
[code]@Bean public ServletRegistrationBean<MyServlet> servletRegistrationBean() { return new ServletRegistrationBean<MyServlet>(new MyServlet(),"/xx/*"); } @Bean public FilterRegistrationBean<MyFilter1> filterRegistrationBean1() { return new FilterRegistrationBean<MyFilter1>(new MyFilter1()); } @Bean public ServletListenerRegistrationBean<MyListener> servletListenerRegistrationBean() { return new ServletListenerRegistrationBean<MyListener>(new MyListener()); }
方法三:方法三:spring boot入口类实现ServletContextInitializer接口,并重写onStartup方法
[code]package com.wisely; import java.util.EnumSet; import javax.servlet.DispatcherType; import javax.servlet.ServletContext; import javax.servlet.ServletException; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.web.servlet.ServletContextInitializer; import com.wisely.filter.MyFilter1; import com.wisely.filter.MyFilter2; import com.wisely.filter.MyFilter3; import com.wisely.listener.MyListener; import com.wisely.servlet.MyServlet; @SpringBootApplication public class Ch72Application implements ServletContextInitializer{ public static void main(String[] args) { SpringApplication.run(Ch72Application.class, args); } //方法三:spring boot入口类实现ServletContextInitializer接口,并重写onStartup方法 @Override public void onStartup(ServletContext servletContext) throws ServletException { servletContext.addServlet("myServlet1", MyServlet.class).addMapping("/myServlet1"); servletContext.addFilter("myFilter1", MyFilter1.class) .addMappingForUrlPatterns(EnumSet.of(DispatcherType.REQUEST), true, "/*"); servletContext.addFilter("myFilter2", MyFilter2.class) .addMappingForUrlPatterns(EnumSet.of(DispatcherType.REQUEST), true, "/*"); servletContext.addFilter("myFilter3", MyFilter3.class) .addMappingForUrlPatterns(EnumSet.of(DispatcherType.REQUEST), true, "/*"); servletContext.addListener(MyListener.class); } }
方法四:spring boot入口类使用@ServletComponentScan注解
前提是:
Servlet类使用注解配置:@WebServlet("/Myservlet")
Filter类使用注解配置:
@Order(1)
@WebFilter(filterName = "testFilter1", urlPatterns = "/*")
Listener类使用注解配置:@WebListener
[code]package com.wisely; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.web.servlet.ServletComponentScan; @ServletComponentScan @SpringBootApplication public class Ch72Application{ public static void main(String[] args) { SpringApplication.run(Ch72Application.class, args); } //方法四:spring boot入口类使用@ServletComponentScan注解 }
访问 http://localhost:8888/Myservlet
运行结果:
相关文章推荐
- SpringBoot学习教程 - 03 - 配置Servlet、Filter、Listener
- Spring Boot 编写Servlet、Filter、Listener、Interceptor的方法
- SpringBoot学习笔记-集成其他组件框架记录
- SpringBoot 配置 Servlet、Filter、Listener
- 18.玩转Spring Boot 注册Servlet、Filter、Listener
- Spring Boot Servlet Filter Listener
- SpringBoot学习笔记之mybatis分页插件集成
- SpringBoot学习笔记(4) Spring Boot 集成 Mybatis
- SpringBoot 配置 Servlet、Filter、Listener
- Spring Boot参考教程(六)Spring Boot配置Servlet,Filter,Listener,Interceptor
- SpringBoot中Servlet&Listener&Filter的应用
- SpringBoot学习笔记之Servlet使用
- SpringBoot初始教程之Servlet、Filter、Listener配置(七)
- Spring Boot使用Servlet、Filter或Listener的方式
- SpringBoot初始教程之Servlet、Filter、Listener配置详解
- SpringBoot如何注册Servlet、Filter、Listener的几种方式
- 在SpringBoot中使用 Servlet Filter Listener
- Spring Boot 学习笔记(五) 配置Servlet容器
- servlet3.0 新特性和springboot Listener和filter案例
- spring boot (二) servlet listener filter interceptor