標籤:getinitparameter
getInitParameter方法來自於GenericServlet,一般建立Servlet都是繼承自HttpServlet,而HttpServlet是GenericServlet的子類,由此通常我們的Servlet都是可以調用該方法去擷取web.xml設定檔中的配置資訊:
1、web.xml部分資訊:
<!-- 全域配置 --> <context-param><param-name>global</param-name><param-value>Okes</param-value></context-param><servlet><servlet-name>TestServlet</servlet-name><servlet-class>com.web.servlets.TestServlet</servlet-class><!-- 局部配置,即TestServlet的配置 --><init-param><param-name>name</param-name><param-value>wangzp,tanhq</param-value></init-param><init-param><param-name>name1</param-name><param-value>wangzp1,tanhq1</param-value></init-param></servlet><servlet-mapping><servlet-name>TestServlet</servlet-name><url-pattern>/test.do</url-pattern></servlet-mapping>
2、如果擷取局部配置以及全域配置
public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {response.setContentType("text/html;charset=utf-8");PrintWriter out = response.getWriter();/** * 擷取<init-param></init-param>中的屬性 * name : <init-name>name</init-name> * value : <init-value>value</init-value> * 通過getInitParameter(name)就可以擷取value中的值 */out.println(getInitParameter("name"));/** * 當有多個上述中的標籤時,那麼可以使用getInitParameterNames * 擷取所有的屬性名稱,然後通過getInitParameter擷取對應的屬性值 */Enumeration enums = getInitParameterNames();while(enums.hasMoreElements()){System.out.println(enums.nextElement());}/** * 擷取全域屬性配置: * 1、必須通過getServletConfig(),或者getServletContext(),然後調用 getInitParameter方法擷取; * 2、全域標籤<context-param></context-param> */out.println(getServletContext().getInitParameter("global"));out.flush();out.close();}
3、總結
3.1 局部Servlet配置屬性擷取:使用getInitParameter或者getInitParameterNames;
3.2 全域Servlet配置屬性擷取:使用servletConfig或者ServletContext對象調用getInitParameter擷取即可
本文出自 “java程式冥” 部落格,請務必保留此出處http://793404905.blog.51cto.com/6179428/1540259