首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 綜合教學

Spring Boot 註冊 Servlet 完整指南:ServletRegistrationBean 實戰

     編輯:Java 綜合教學

為什麼不用 @WebServlet?

Spring MVC 已處理大多數請求,但第三方組件(如 HystrixMetricsStreamServlet)無法掃描註解,需程式化註冊。

實戰步驟

1. 定義 Servlet

public class TestServlet extends HttpServlet {
    @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp)
            throws ServletException, IOException {
        System.out.println("zhaojigang servlet");
    }
}

2. 配置類註冊

@Configuration
public class ServletConfig {
    @Bean
    public TestServlet testServlet() { return new TestServlet(); }

    @Bean
    public ServletRegistrationBean testServletRegistration(TestServlet servlet) {
        ServletRegistrationBean reg = new ServletRegistrationBean(servlet);
        reg.setEnabled(true);
        reg.addUrlMappings("/servlet/test");
        return reg;
    }
    // 第二個 Servlet 同理...
}

3. 驗證

啟動應用,訪問 https://localhost:8083/servlet/test,控制台輸出 zhaojigang servlet。

關鍵點

  • 每個 Servlet 對應一個 ServletRegistrationBean。
  • 自有 Servlet 可用 @WebServlet 簡化;第三方 Servlet 必須用此方式。
  • Spring Boot 2.x 使用 ServletRegistrationBean;1.x 用 ServletRegistrationBean 同名類(包不同)。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved