zoukankan      html  css  js  c++  java
  • SpringBoot整合Servlet的两种方式

    本文环境

    Maven3.5
    JDK1.8
    idea
    SpringBoot2.0.1

    工程pom文件加入Jar包

    <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

    1. 注解扫描方式

    - 准备Servlet

    @WebServlet(name = "firstServlet", urlPatterns = "/firstServlet")  //标记为servlet,以便启动器扫描。
    public class FirstServlet extends HttpServlet {
    
        @Override
        protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
            resp.getWriter().append("firstServlet");
        }
    
    }

    - 注册Servlet

    @SpringBootApplication
    @ServletComponentScan   //启动器启动时,扫描本目录以及子目录带有的webservlet注解的
    public class FirstServletApplication {
    
        public static void main(String[] args) {
            SpringApplication.run(FirstServletApplication.class, args);
        }
    }

    - 访问Servlet

    2. 组建注册方式

    - 准备Servlet

    //这里不需要添加webServlet注解
    public class SecondServlet extends HttpServlet {
        @Override
        protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
            resp.getWriter().append("SecondServlet");}}

    - 注册Servlet

    @SpringBootApplication
    public class SecondServletApplication {
        public static void main(String[] args) {
            SpringApplication.run(SecondServletApplication.class, args);
        }
        @Bean  //一定要加,不然这个方法不会运行
        public ServletRegistrationBean getServletRegistrationBean() {  //一定要返回ServletRegistrationBean
            ServletRegistrationBean bean = new ServletRegistrationBean(new SecondServlet());     //放入自己的Servlet对象实例
            bean.addUrlMappings("/secondServlet");  //访问路径值
            return bean;}}

    - 访问Servlet

  • 相关阅读:
    Xcode 配置常用变量(SRCROOT, PROJECT_DIR, PROJECT_NAME)
    Git submodule实战
    Charles抓Https的包
    Vue-Quill-Editor 富文本编辑器的使用
    vue计算属性无法监听到数组内部变化
    移动端键盘弹起导致底部按钮上浮解决方案
    js中数组删除 splice和delete的区别,以及delete的使用
    js实现复制input的value到剪切板
    treetable
    vue中状态管理vuex的使用分享
  • 原文地址:https://www.cnblogs.com/wpcnblog/p/12358122.html
Copyright © 2011-2022 走看看