SpringBoot默认是以jar包的方式启动嵌入式的Servlet容易来启动SpringBoot的Web应用,没有web.xml文件

因此我们可以使用以下方式来注册Servlet、Filter、Listener。

(1)、注册Servlet

 1 package cn.coreqi.servlet;
 2
 3 import javax.servlet.ServletException;
 4 import javax.servlet.http.HttpServlet;
 5 import javax.servlet.http.HttpServletRequest;
 6 import javax.servlet.http.HttpServletResponse;
 7 import java.io.IOException;
 8 import java.io.PrintWriter;
 9
10 public class MyServlet extends HttpServlet {
11     @Override
12     protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
13         // 设置响应内容类型
14         resp.setContentType("text/html");
15
16         // 实际的逻辑是在这里
17         PrintWriter out = resp.getWriter();
18         out.println("<h1>MyServlet</h1>");
19     }
20 }

1     //注册Servlet
2     @Bean
3     public ServletRegistrationBean myServlet(){
4         ServletRegistrationBean registrationBean = new ServletRegistrationBean(new MyServlet(),"/myservlet");
5         return registrationBean;
6     }

(2)、注册Filter

 1 package cn.coreqi.filter;
 2
 3 import javax.servlet.*;
 4 import java.io.IOException;
 5 import java.io.PrintWriter;
 6
 7 public class MyFilter implements Filter {
 8     @Override
 9     public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
10         PrintWriter out = servletResponse.getWriter();
11         out.println("<h1>MyFilter</h1>");
12         filterChain.doFilter(servletRequest,servletResponse);
13     }
14 }

1     @Bean
2     public FilterRegistrationBean myFilter(){
3         FilterRegistrationBean registrationBean = new FilterRegistrationBean();
4         registrationBean.setFilter(new MyFilter());
5         registrationBean.setUrlPatterns(Arrays.asList("/myservlet"));
6         return registrationBean;
7     }

(3)、注册Listener

 1 package cn.coreqi.listener;
 2
 3 import javax.servlet.ServletContextEvent;
 4 import javax.servlet.ServletContextListener;
 5
 6 public class MyListener implements ServletContextListener {
 7     @Override
 8     public void contextInitialized(ServletContextEvent sce) {
 9         System.out.println("contextInitialized");
10     }
11 }

1     @Bean
2     public ServletListenerRegistrationBean myListener(){
3         ServletListenerRegistrationBean registrationBean = new ServletListenerRegistrationBean();
4         registrationBean.setListener(new MyListener());
5         return registrationBean;
6     }

转载于:https://www.cnblogs.com/fanqisoft/p/10335765.html

SpringBoot注册Servlet、Filter、Listener相关推荐

  1. SpringBoot的Web开发入门案例5—注册Servlets, Filter, Listener

    SpringBoot的Web开发入门案例5-注册Servlets, Filter, Listener 注册Servlet 创建MyServlet类 package com.blu.conf;impor ...

  2. servlet,filter,listener区别

    时间的朋友 随笔 - 2314, 文章 - 3, 评论 - 101, 引用 - 0 servlet/filter/listener/interceptor区别与联系 一.概念: 1.servlet:s ...

  3. servlet/filter/listener/interceptor区别与联系

    2019独角兽企业重金招聘Python工程师标准>>> servlet/filter/listener/interceptor区别与联系 博客分类: java 由于最近两个月工作比较 ...

  4. JavaWeb三大组件(Servlet,Filter,Listener 自己整理,初学者可以借鉴一下)

    JavaWeb三大组件(Servlet,Filter,Listener 自己整理,初学者可以借鉴一下) Reference 转载于:https://www.cnblogs.com/Jeremy2001 ...

  5. Spring Boot注册Servlet三大组件(Servlet, Filter, Listener)

    Spring Boot默认使用的Tomcat的Servlet容器,这个容器我们可以自己替换,比如替换成支持JSP的Servlet容器,这个容器已经帮我们注册好了一个Servlet(Dispatcher ...

  6. Spring Boot整合Servlet,Filter,Listener,访问静态资源

    目录 Spring Boot整合Servlet(两种方式) 第一种方式(通过注解扫描方式完成Servlet组件的注册): 第二种方式(通过方法完成Servlet组件的注册) Springboot整合F ...

  7. servlet/filter/listener/interceptor区别与联系(转)

    由于最近两个月工作比较清闲,个人也比较"上进",利用工作空余时间,也继续学习了一下,某天突然想起struts2和struts1的区别的时候,发现为什么struts1要用servle ...

  8. JAVA基础(16) Servlet/Filter/Listener/Interceptor区别与联系

    一.概念: 1.servlet:servlet是一种运行服务器端的java应用程序,具有独立于平台和协议的特性,并且可以动态的生成web页面,它工作在客户端请求与服务器响应的中间层.最早支持 Serv ...

  9. Springboot注册Servlet

    第一步:先写一个Sevlet配置类 public class ServletConfig extends HttpServlet{@Overrideprotected void doGet(HttpS ...

最新文章

  1. Python核心编程(第二版)第六章部分习题代码
  2. Scala变量和常量
  3. 介绍一个JSONP 跨域访问代理API-yahooapis
  4. 函数计算机按键没反应,关于waitKey()函数按键无反应情况
  5. Jenkins file一行代码部署.NET程序到K8S
  6. SICP~计算机程序的构造和解释~ 1.12 c++实现
  7. Centos7 修改防火墙,开放端口、转发端口
  8. PHPExcel导出Excel方法总结——ThinkPHP5
  9. 新媒体运营必备的实用工具
  10. 丽台显卡测试软件,丽台Quadro FX4600专业显卡试用评测
  11. 【SAP】SAP FI,中英日专业名词对照表
  12. UE4材质—UV和贴图坐标系
  13. C语言_将 4×4 的数组逆时针旋转 90 度后输出
  14. 如何快速跑一个sumo的交通仿真
  15. QT5显示视频或者图片缩小后以滚动条方式显示
  16. 一款优秀数据库中间件的不完全解析
  17. linux下 usb 和pci设备的reset
  18. 外汇期权及外汇保证金
  19. 虚拟全球服务器列表补丁,《自由枪骑兵》联网指南心得
  20. webupload 踩过的坑

热门文章

  1. (转载)Linux下pthread_once()函数
  2. 关于工资的三个秘密【转载】
  3. 数据挖掘 概念与技术(原书第3版)
  4. pythontuple数据类型_Python数据类型之元组的详细介绍
  5. java---实现闹钟的基本功能
  6. 如何实现把固定内容自动写入excel_Odoo如何实现基于关联数据自动写入本表数据项的实施技巧分享...
  7. 数字溢出为啥程序出错
  8. 002_SpringIOC
  9. JAVA实现inotify一样的功能_哪些操作系统支持在Java中查看本机(类似inotify)文件
  10. TextureView+MediaPlayer实现在线短视频播放