下文笔者将讲述两种SpringBoot集成Servlet的方法,如下所示:
实现思路:
方式1:
使用全注解的方式开发
1.1 在启动类上面加上注解 @ServletComponentScan
1.2 编写Servlet程序,并在Servlet程序上加上注解 @WebServlet(name=”testServlet1″,urlPatterns = “/test”)
方式2:
直接编写一个@Configuration类
将Servlet程序使用ServletRegistrationBean注册到Springboot中
例1:
//启动类上加入Servlet扫描注解@SpringBootApplication@ServletComponentScanpublic class SpringbootservletApplication {public static void main(String[] args) {SpringApplication.run(SpringbootservletApplication.class, args);}}//编写Servlet类@WebServlet(name="testServlet1",urlPatterns = "/test")public class TestServlet extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {System.out.println("java265.com 提醒你 -servlet已经开始运行");}}-----采用以上方式编写代码后,我们可以使用http://localhost:8080/test访问servlet了
例2:
@SpringBootApplicationpublic class SpringbootservletApplication {public static void main(String[] args) {SpringApplication.run(SpringbootservletApplication.class, args);}}//编写servletpublic class TestServlet extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {System.out.println("java265.com 提醒你 -servlet已经开始运行");}}//编写configuration类package com.java265;import com.adeal.servlet.TestServlet;import org.springframework.boot.web.servlet.ServletRegistrationBean;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;@Configurationpublic class ServletConfig {/** 多个Servlet 需实例化多个ServletRegistrationBean实例* */@Beanpublic ServletRegistrationBean getServletRegistrationBean() {ServletRegistrationBean bean = new ServletRegistrationBean(new TestServlet());//Servlet既可以使用 test01也可以使用test02访问bean.addUrlMappings("/test02");bean.addUrlMappings("/test01");return bean;}}-------编写以上代码后,我们可以使用----http://localhost:8080/test01 访问servlet了http://localhost:8080/test02 访问servlet了
来源于:http://www.java265.com/JavaFramework/SpringBoot/202201/2221.html