由于Spring Boot默认是以jar包的形式启动嵌入式的Servlet容器来启动Spring Boot的web应用是,没有web.xml配置文件
注册三大组件用以下方式

ServletRegistrationBean
FilterRegistrationBean
ServletListenerRegistrationBean


一、注册一个ServletRegistrationBean

1.定义一个Servlet类

//向页面输出一句hello
public class HttpServlet extends javax.servlet.http.HttpServlet {protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {response.getWriter().write("hello");}protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {this.doPost(request,response);}
}

2.编写一个Servlet配置类

@Configuration
public class MyServerConfig {//注册三大组件//注意加上@Bean注解,否者无法加入到容器中@Beanpublic ServletRegistrationBean myServlet(){ServletRegistrationBean servlet = new ServletRegistrationBean(new HttpServlet(), "/myServlet");return servlet;}

3.Spring Boot配置文件

server.port=8081
server.servlet.context-path=/boot
server.tomcat.uri-encoding=UTF-8

4.启动主配置文件访问http://localhost:8081/boot/myServlet

这样就生效了


二、注册一个FilterRegistrationBean

1.定义一个Filter类

public class MyFilter implements Filter {@Overridepublic void init(FilterConfig filterConfig) throws ServletException {}@Overridepublic void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {System.out.println("success");filterChain.doFilter(servletRequest,servletResponse);}@Overridepublic void destroy() {}
}

2.编写一个filter配置类

@Configuration
public class MyServerConfig {//注册三大组件@Beanpublic FilterRegistrationBean filterRegistrationBean(){FilterRegistrationBean re = new FilterRegistrationBean();re.setFilter(new MyFilter());re.setUrlPatterns(Arrays.asList("/hello","/filter"));return re;}

3.启动访问http://localhost:8081/boot/filter


ServletListenerRegistrationBean的使用类似于以上两种组件

Spring Boot 帮我们自动注册了SpringMVC的核心控制器DispatcherServlet,其注册方式类似于以上两种注册

Spring Boot之注册servlet三大组件相关推荐

  1. Spring Boot怎么样注册Servlet三大组件[Servlet、Filter、Listener]

    前言 由于SpringBoot默认是以jar包的方式启动嵌入式的Servlet容器来启动SpringBoot的web应用,没有web.xml文件. 注册三大组件用以下方式 一.ServletRegis ...

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

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

  3. SpringBoot中注册Servlet三大组件

    SpringBoot中默认内置了Servlet容器,Tomcat.SpringBoot默认是以jar包的方式启动内置的Servlet容器,没有web.xml文件.所以只能通过自定义servlet配置. ...

  4. Spring Boot基础学习笔记12:组件注册整合Servlet三大组件

    文章目录 零.学习目标 一.整合Servlet三大组件概述 (一)组件注册整合Servlet三大组件 (二)路径扫描整合Servlet三大组件 二.创建Spring Boot项目 - Integrat ...

  5. Spring Boot基础学习笔记13:路径扫描整合Servlet三大组件

    文章目录 零.学习目标 一.创建Spring Boot项目 - IntegrateThreeComponents02 二.使用路径扫描方式整合Servlet三大组件 (一)创建MyServlet类 ( ...

  6. 【spring boot2】第8篇:spring boot 中的 servlet 容器及如何使用war包部署

    嵌入式 servlet 容器 在 spring boot 之前的web开发,我们都是把我们的应用部署到 Tomcat 等servelt容器,这些容器一般都会在我们的应用服务器上安装好环境,但是 spr ...

  7. Spring Boot注册Servlet三大组建(Servlet、Filter、Listener)

    目录 理论 演示及代码 理论 在Spring Boot中使用下面3个函数可以注册Servlet.Filter.Listener ServletRegistrationBean FilterRegist ...

  8. 6、Spring Boot:自定义Servlet Filters

    在项目中使用filters可以进行访问权限验证.过滤有XSS威胁的字符.记录访问日志等等.Spring Boot默认在项目中添加了两个Filter:OrderedCharacterEncodingFi ...

  9. Spring Boot开发之使用JustAuth组件实现第三方登录(QQ、微博等)

    在我们的项目开发中,使用第三方登录(如QQ登录.微信登录等)可以更加方便.轻松地实现用户登录. 在以往的开发过程中,如果要使项目实现第三方登录功能,一般过程是阅读官网的开发文档,并下载其JDK(或者依 ...

最新文章

  1. Linux Kernel TCP/IP Stack — L2 Layer — Linux Bridge(虚拟网桥)
  2. 计算机重装系统知识,电脑重装系统基础知识扫盲贴
  3. shell错位_Linux 中纠正拼写错误的Bash 命令方法
  4. V210调整根分区大小
  5. 使用python 对图片进行水印,保护自己写的文章
  6. C++ opengl 复合运动
  7. box-shadow属性四个值_flex笔记1——flex-direction属性
  8. 强制关机对电脑的影响_强制关机损害电脑?看完秒懂
  9. 在设计四人抢答器中灯全亮_EDA课程设计—四人抢答器设计
  10. 高效搭建基于dnsmasq通过webui管理的dns服务器
  11. 史上首例!阿里程序员写的代码,被国家博物馆收藏了!
  12. java开发可视化界面_java 可视化界面编程
  13. 超支化共轭聚合物纳米粒子-具有水分散性/PLGA 纳米粒子载药
  14. Error:Cannot run program XXX (in directory C:\Users\Administrator\.IntelliJIdeaXXX
  15. JavaWeb教务管理系统(选课评教,框架SpringMvc+Hibernate)
  16. FT1248程序(FT232H,FT220X)
  17. 抓取国家统计局2018年的省市区街道数据
  18. Axure 9 基本原件样式设置
  19. 苹果x充电慢是什么原因_苹果手机充不进去电?为什么?什么原因?怎么解决?...
  20. python绘图库turtle_Python库-----Turtle绘图库

热门文章

  1. BI Content、Metadata Repository
  2. 如何获取 sql server 最新补丁
  3. java zip malformed_关于Java解压文件的一些坑及经验分享(MALFORMED异常)
  4. css箭头超链接,css超链接
  5. centos7 怎么封装自己的镜像_「10」-CentOS7.5(1804)
  6. 和煤一样的黑色矿石_煤精?黑琥珀?煤球一样的东西这么值钱!
  7. python判断ip能否ping通_Python实现检测服务器是否可以ping通的2种方法
  8. linuxpython重定向_linux命令重定向、、 1、 2、 1、 2、
  9. 矩阵为奇异工作精度_外积与复合矩阵,特征值/奇异值的乘积型受控,Hodge对偶与伴随矩阵...
  10. python语言通过字典实现映射关系_mpython3丨字典的使用介绍