Servlet 初始化參數允許在部署描述符中定義配置信息,實現代碼與配置分離,提升組件複用性。本文詳細講解參數定義、注入與獲取全流程。
ServletConfig:封裝初始化配置信息,由容器創建並傳遞給 init()。init(ServletConfig config):重寫此方法接收配置對象。config.getInitParameter("paramName"):獲取指定參數值。package ServletDemo;
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.IOException;
public class InitServlet extends HttpServlet {
private String initParam;
public void init(ServletConfig config) throws ServletException {
this.initParam = config.getInitParameter("ref"); // 獲取參數
}
public void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
System.out.println("初始化參數:" + this.initParam);
}
public void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
this.doGet(req, resp);
}
}
<servlet>
<servlet-name>initParameter</servlet-name>
<servlet-class>ServletDemo.InitServlet</servlet-class>
<init-param>
<param-name>ref</param-name>
<param-value>https://zhaoyuqiang.blog.51cto.com</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>initParameter</servlet-name>
<url-pattern>/initServletTest</url-pattern>
</servlet-mapping>
此機制是 Spring IoC 容器管理 Bean 屬性注入的雛形。