【Web入門系列】初探ServletConfig


ServletConfig的作用

用於加載Servlet的初始化參數,在一個web應用可以存在多個ServletConfig對象,一個Servlet對應一個ServletConfig對象。

ServletConfig創建時機及如何得到

創建時機:在創建完Servlet對象之后,調用init方法之前創建。

得到對象:直接從有參數的init方法中得到。

Servlet的初始化參數配置

<servlet>
    <servlet-name>ConfigServlet</servlet-name>
    <servlet-class>ysdrzp.config.ConfigServlet</servlet-class>
    <init-param>
        <param-name>aaa</param-name>
        <param-value>value of aaa</param-value>
    </init-param>
    <init-param>
        <param-name>bbb</param-name>
        <param-value>value of bbb</param-value>
     </init-param>
</servlet>
<servlet-mapping>
     <servlet-name>ConfigServlet</servlet-name>
     <url-pattern>/configServlet</url-pattern>
</servlet-mapping>

 
public class ConfigServlet extends HttpServlet {

    /**
     * 以下兩段代碼GenericServlet已經寫了,我們無需編寫.
     */
    //private ServletConfig config;

    /**
     *  1)tomcat服務器把那些初始化參數在加載web應用的時候,封裝到ServletConfig對象中
     *  2)tomcat服務器調用init方法傳入ServletConfig對象
     */
    /*@Override
    public void init(ServletConfig config) throws ServletException {
        this.config = config;
    }*/

    @Override
    public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

        //查詢當前servlet的所有初始化參數
        Enumeration<String> enums = this.getServletConfig().getInitParameterNames();
        while(enums.hasMoreElements()){
            String paramName = enums.nextElement();
            String paramValue = this.getServletConfig().getInitParameter(paramName);
            System.out.println(paramName+"="+paramValue);
        }

        //得到servlet的名稱
        String servletName = this.getServletConfig().getServletName();
        System.out.println(servletName);
    }
}

注意: Servlet的初始化參數只能由當前的這個Sevlet獲取。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM