Spring Boot整合Servlet

本文详细介绍了如何在Spring Boot应用中整合Servlet,包括两种方式:一是通过注解扫描完成servlet组件注册,二是使用@Bean注解手动注册。文中列举了每种方式的具体步骤,帮助开发者更好地理解和实践。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、Servlet的配置文件式开发

1.创建一个web项目(项目名称为demo),并编写一个Servlet类。例如:FirstServlet extends HttpServlet

2.需要在web.xml中加入以下配置,以便servlet被web容器管理,这里的web容器为tomcat

<servlet>
    <servlet-name>FirstServlet</servlet-name>
    <servlet-class>com.dsgk.servlet.FirstServlet</servlet-class>
</servlet>
<servlet-mapping>
    <servlet-name>FirstServlet</servlet-name>
    <url-pattern>/firstServlet</url-pattern>
</servlet-mapping>

3.将项目部署到tomcat上,并启动tomcat,客户端浏览器访问路径http://localhost:8080/demo/firstServlet

二、Spring Boot整合Servlet

方式一:通过注解扫描完成servlet组件的注册

1. 编写servlet类

import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
    SpringBoot整合servlet方式一
**/
@WebServlet(name="FirstServlet", urlPatterns="/first")
public class FirstServlet extends HttpServlet {
    @Override
    protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        System.out.println("FirstServlet.....");
    }

2. 编写启动类

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.web.servlet.ServletComponentScan;

@SpringBootApplication
@ServletComponentScan
public class App {
    public static void main(String[] args) {
        SpringApplication.run(App.class, args);
    }
}

方式二:通过方法完成servlet组件的注册

1. 编写servlet类

import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
Spring Boot整合servlet方式二
**/
public class SecondServlet extends HttpServlet {
    @Override
    protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        System.out.println("secondservlet.....");
    }
}

2. 编写启动类

@SpringBootApplication
public class App2 {
    public static void main(String[] args) {
        SpringApplication.run(App2.class, args);
    }

    @Bean
    public ServletRegistrationBean getServletRegistrationBean() {
        ServletRegistrationBean bean = new ServletRegistrationBean(new SecondServlet());
        bean.addUrlMappings("/second");
        return bean;
    }
}

三、总结

Spring Boot整合servlet有两种方式:

方式一:通过注解注册servlet组件

@WebServlet,用于servlet类上,注解中的属性name和urlPatterns分别指定servlet的名称和映射的url路径
@ServletComponentScan,用于启动类上,扫描位于启动类同级包以及子包下被 @WebServlet标注的类

方式二:通过方法注册servlet组件
利用@Bean注解手动注册servlet组件,其中@Bean注解可以用来通过方法实例化一个对象,并将对象交由spring容器管理,作用等同于spring配置文件中的<bean></bean>标签

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值