SpringBoot整合Servlet的两种方式:

1. 通过注解扫描完成Servlet组件注册

  • 新建Servlet类继承HttpServlet
  • 重写超类doGet方法
  • 在该类使用注解@WebServlet
@WebServlet(name="FirstServlet" ,urlPatterns="/first")
public class FirstServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
System.out.println("执行了");
}
}
  • 编写启动类

  • 增加注解@ServletComponentScan //在springboot启动时会扫描websevlet的路径,并将该类实例化

  /**
* SpringBoot 启动类
* @SpringBootApplication 是springboot的启动类
* 启动器存放的位置:启动器可以和controller位于同一个包下或者上一个包下。 不能同级的包
*/
@SpringBootApplication
@ServletComponentScan //在springboot启动时会扫描websevlet的路径,并实例化
public class App {
public static void main(String[] args) {
SpringApplication.run(App.class, args);
}
}

2.通过方法完成Servlet组件注册

  • 编写一个类同样继承HttpServlet

  • 重写doGet方法

  • 编写启动类

    1. 添加一个方法,返回值必须是ServletRegistrationBean的对象,该对象就是注册Servlet的对象。
    2. 在方法中,new SecondServlet()
    3. 通过bean.addUrlMappings("/second")完成urlPatterns的配置
    4. 返回该对象
    5. 在该方法中加入注解@Bean
    /**
    * SpringBoot 启动类
    * @SpringBootApplication 是springboot的启动类
    * 启动器存放的位置:启动器可以和controller位于同一个包下或者上一个包下。 不能同级的包
    */
    @SpringBootApplication
    public class App2 {
    public static void main(String[] args) {
    SpringApplication.run(App2.class, args);
    }
    /**
    * 注册Servlet的方法
    */
    @Bean
    public ServletRegistrationBean getServletRegistrationBean(){
    ServletRegistrationBean bean = new ServletRegistrationBean(new SecondServlet());
    bean.addUrlMappings("/second");
    return bean;
    }
    }

【SpringBoot】03.SpringBoot整合Servlet的两种方式的更多相关文章

  1. SpringBoot整合Servlet的两种方式

    SpringBoot整合Servlet有两种方式: 1.通过注解扫描完成Servlet组件的注册: 2.通过方法完成Servlet组件的注册: 现在简单记录一下两种方式的实现 1.通过注解扫描完成Se ...

  2. SpringBoot从入门到精通二(SpringBoot整合myBatis的两种方式)

    前言 通过上一章的学习,我们已经对SpringBoot有简单的入门,接下来我们深入学习一下SpringBoot,我们知道任何一个网站的数据大多数都是动态的,也就是说数据是从数据库提取出来的,而非静态数 ...

  3. 【SpringBoot】05.SpringBoot整合Listener的两种方式

    SpringBoot整合Listener的两种方式: 1.通过注解扫描完成Listener组件的注册 创建一个类实现ServletContextListener (具体实现哪个Listener根据情况 ...

  4. Spring Boot 整合 Shiro ,两种方式全总结!

    在 Spring Boot 中做权限管理,一般来说,主流的方案是 Spring Security ,但是,仅仅从技术角度来说,也可以使用 Shiro. 今天松哥就来和大家聊聊 Spring Boot ...

  5. 【SpringBoot】04.SpringBoot整合Filter的两种方式

    SpringBoot整合Filter过滤器的两种方式: 1.通过扫描注解完成Filter组件注册 创建一个类,实现Filter接口,实现doFilter()方法 在该类使用注解@WebFilter,设 ...

  6. springboot整合mybatis的两种方式

    https://blog.csdn.net/qq_32719003/article/details/72123917 springboot通过java bean集成通用mapper的两种方式 前言:公 ...

  7. 基于Maven的SpringBoot项目实现热部署的两种方式

    转载:http://blog.csdn.net/tengxing007/article/details/72675168 前言 JRebel是JavaEE中比较流行的热部署插件,可快速实现热部署,节省 ...

  8. 在springboot中使用Mybatis Generator的两种方式

    介绍 Mybatis Generator(MBG)是Mybatis的一个代码生成工具.MBG解决了对数据库操作有最大影响的一些CRUD操作,很大程度上提升开发效率.如果需要联合查询仍然需要手写sql. ...

  9. SpringCloud系列-整合Hystrix的两种方式

    Hystrix [hɪst'rɪks],中文含义是豪猪,因其背上长满棘刺,从而拥有了自我保护的能力.本文所说的Hystrix是Netflix开源的一款容错框架,同样具有自我保护能力. 本文目录 一.H ...

随机推荐

  1. c语言gets函数

    函数gets的原型为:char*gets(char*buffer); 在 stdio.h中定义,如果要程序中用到此函数需包含#include<stdio.h> gets()函数用来从标准输 ...

  2. 引用类型之Array(二)

    操作方法 concat( ) concat() 方法用于连接两个或多个数组. 该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本. 语法 arrayObject.concat(arrayX,a ...

  3. Java中类型判断的几种方式

    1. 前言 在Java这种强类型语言中类型转换.类型判断是经常遇到的.今天就细数一下Java中类型判断的方法方式. 2. instanceof instanceof是Java的一个运算符,用来判断一个 ...

  4. 3.Android网络编程-http介绍

    1.HTTP请求方法 根据HTTP标准,HTTP请求可以使用多种请求方法. HTTP1.0定义了三种请求方法: GET(查), POST(改)和 HEAD(获取报头,一般用来测试链接是否正常)方法. ...

  5. MeteoInfoLab脚本示例:CloudSAT Swath HDF数据

    读取CloudSAT HDF Swath数据,绘图分上下两部分,上面是时间和高度维的Radar Reflectivity Factor二维图,下面是卫星轨迹图.示例程序: # Add file f = ...

  6. ffmpeg实现视频的翻转与旋转(ffmpeg4.2.2)

    一,ffmpeg的安装 请参见: https://www.cnblogs.com/architectforest/p/12807683.html 说明:刘宏缔的架构森林是一个专注架构的博客,地址:ht ...

  7. 生成流水号(20060210-0001)的SQL函数

    create table t_sql(id int identity(1,1),code char(13),[name] nvarchar(10)) go create function f_crea ...

  8. 字符集、字符编码、国际化、本地化简要总结(UNICODE/UTF/ASCII/GB2312/GBK/GB18030)

    PS:要转载请注明出处,本人版权所有. PS: 这个只是基于<我自己>的理解, 如果和你的原则及想法相冲突,请谅解,勿喷. 环境说明   普通的linux 和 普通的windows.    ...

  9. 攻防世界-web2

    打开题目直接一梭子代码,给我们了个加密的密文,然我们解出flag 审计一波 先时将flag字符串逆序,然后每一个ascii码数值+1,然后base64加密,然后逆序,然后再rot13加密 得到加密的密 ...

  10. .Net Core 3.1.2 区域路由配置【原创】

    昨天遇到一个项目问题,新建的.NET core矿建在新建区域的MVC页面里面,无法通过路由找到页面.然后在网络上查询很多资料,发现都是千古文章一大抄,而且都是错误的. 后面又添加了3个专业技术群,同样 ...