在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 教程/ Linux/ Servlet ServletConfig配置信息
Servlet web.xml welcome-file-list
Servlet從數(shù)據(jù)庫(kù)讀取記錄性能優(yōu)化
Servlet URL重寫(xiě)帶參數(shù)
War文件
Web技術(shù)基礎(chǔ)
Servlet GenericServlet類(lèi)
Servlet API
Servlet ServletInputStream類(lèi)
使用MyEclipse創(chuàng)建Servlet
Servlet增刪改查
Servlet ServletConfig配置信息
Servlet Cookies
Servlet重定向
Servlet生命周期
Servlet HttpSession會(huì)話(huà)
Servlet HttpServlet類(lèi)
Servlet注冊(cè)表單示例
Servlet表單隱藏字段
Servlet下載文件
Servlet教程
Servlet身份驗(yàn)證過(guò)濾器
Servlet ServletOutputStream類(lèi)
Servlet HttpSession登錄注銷(xiāo)實(shí)例
Servlet啟動(dòng)時(shí)加載
Servlet事件和監(jiān)聽(tīng)器
使用Eclipse創(chuàng)建Servlet
Servlet ServletContextEvent事件
Servlet HttpSessionEvent統(tǒng)計(jì)在線(xiàn)用戶(hù)數(shù)實(shí)例
Servlet RequestDispatcher請(qǐng)求轉(zhuǎn)發(fā)
Servlet使用注釋
Servlet過(guò)濾器示例
Servlet過(guò)慮器
Servlet ServletContext配置信息
Servlet登錄注銷(xiāo)Cookies實(shí)例
Servlet工作流程
Servlet會(huì)話(huà)跟蹤
Servlet登錄實(shí)例
Servlet ServletRequest接口
Servlet ServletRequestEvent類(lèi)和接口
Servlet入門(mén)程序
Servlet查詢(xún)搜索數(shù)據(jù)示例
Servlet FilterConfig應(yīng)用示例
Servlet顯示所有頭信息
Servlet屬性設(shè)置
使用NetBeans創(chuàng)建Servlet
Servlet接口實(shí)現(xiàn)
Servlet上傳文件

Servlet ServletConfig配置信息

ServletConfig對(duì)象是由每個(gè)servlet的Web容器創(chuàng)建的。這個(gè)對(duì)象可用于從web.xml文件獲取配置信息。

如果從web.xml文件修改配置信息,就不需要更改servlet中的代碼。因此,對(duì)于有特定配置內(nèi)容需要不定時(shí)修改,這樣會(huì)更容易管理Web應(yīng)用程序。

ServletConfig的優(yōu)點(diǎn)

ServletConfig的核心優(yōu)點(diǎn)是,如果可以修改web.xml文件中的信息,則不需要編輯servlet代碼文件。

ServletConfig接口的方法

編號(hào) 方法 描述
1 public String getInitParameter(String name) 返回指定參數(shù)名稱(chēng)的參數(shù)值。
2 public Enumeration getInitParameterNames() 返回所有初始化參數(shù)名稱(chēng)的枚舉。
3 public String getServletName() 返回servlet的名稱(chēng)。
4 public ServletContext getServletContext() 返回ServletContext的對(duì)象。

如何獲取ServletConfig的對(duì)象?

  • 可通過(guò)調(diào)用Servlet接口的getServletConfig()方法來(lái)返回ServletConfig對(duì)象。

getServletConfig()方法的語(yǔ)法

public ServletConfig getServletConfig();

getServletConfig()方法的示例

ServletConfig config=getServletConfig();  
//Now we can call the methods of ServletConfig interface

為servlet提供初始化參數(shù)的語(yǔ)法

servlet的init-param子元素用于指定servlet的初始化參數(shù)。

<web-app>
  <servlet>
    ......
    <init-param>  
      <param-name>parameter_name</param-name>
      <param-value>parameter_value</param-value>
    </init-param>
    ......
  </servlet>
</web-app>

獲取初始化參數(shù)的ServletConfig示例

在這個(gè)例子中,將從web.xml文件獲取一個(gè)初始化參數(shù),并在servlet中打印這些信息。

創(chuàng)建一個(gè)名稱(chēng)為:ServletConfig的動(dòng)態(tài)Web應(yīng)用項(xiàng)目,其結(jié)構(gòu)如下所示 -

下面是幾個(gè)主要的代碼文件 -

文件:ConfigServlet.java -

package com.yiibai;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 * Servlet implementation class ConfigServlet
 */
public class ConfigServlet extends HttpServlet {
    private static final long serialVersionUID = 1L;

    /**
     * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse
     *      response)
     */
    protected void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        // TODO Auto-generated method stub
        response.setContentType("text/html");
        PrintWriter out = response.getWriter();

        ServletConfig config = getServletConfig();
        String driver = config.getInitParameter("mysql_driver");
        out.print("Driver details is: <b>" + driver+"</b>");
        out.close();
    }
}

文件:web.xml -

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns="http://xmlns.jcp.org/xml/ns/javaee"
    xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
    id="WebApp_ID" version="3.1">
    <display-name>ConfigServlet</display-name>
    <welcome-file-list>
        <welcome-file>index.html</welcome-file>
        <welcome-file>index.jsp</welcome-file>
    </welcome-file-list>
    <servlet>
        <servlet-name>ConfigServlet</servlet-name>
        <servlet-class>com.yiibai.ConfigServlet</servlet-class>
        <init-param>
            <param-name>mysql_driver</param-name>
            <param-value>com.mysql.jdbc.Driver</param-value>
        </init-param>
    </servlet>

    <servlet-mapping>
        <servlet-name>ConfigServlet</servlet-name>
        <url-pattern>/dbconfig</url-pattern>
    </servlet-mapping>
</web-app>

將上面項(xiàng)目部署并訪(fǎng)問(wèn)URL: http://localhost:8080/ConfigServlet/dbconfig ,如果程序沒(méi)有問(wèn)題,那么應(yīng)該會(huì)看到以下結(jié)果 -

獲取所有初始化參數(shù)的ServletConfig示例

在這個(gè)例子中,我們從web.xml文件獲取所有的初始化參數(shù),并在servlet中打印這些信息。

幾個(gè)主要代碼文件如下 -

文件:ConfigServletAll.java -

package com.yiibai;

import java.io.IOException;
import java.io.PrintWriter;
import java.util.Enumeration;

import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 * Servlet implementation class ConfigServletAll
 */
public class ConfigServletAll extends HttpServlet {
    private static final long serialVersionUID = 1L;

    /**
     * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse
     *      response)
     */
    protected void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        // TODO Auto-generated method stub
        response.setContentType("text/html");
        PrintWriter out = response.getWriter();

        ServletConfig config = getServletConfig();
        Enumeration<String> e = config.getInitParameterNames();
        String str = "";
        while (e.hasMoreElements()) {
            str = e.nextElement();
            out.print("Name: " + str);
            out.print(" value: " + config.getInitParameter(str)+"<br/>");
        }

        out.close();
    }

}

文件:web.xml -

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns="http://xmlns.jcp.org/xml/ns/javaee"
    xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
    id="WebApp_ID" version="3.1">
    <display-name>ConfigServlet</display-name>
    <welcome-file-list>
        <welcome-file>index.html</welcome-file>
        <welcome-file>index.jsp</welcome-file>
    </welcome-file-list>
    <servlet>
        <servlet-name>ConfigServlet</servlet-name>
        <servlet-class>com.yiibai.ConfigServlet</servlet-class>
        <init-param>
            <param-name>mysql_driver</param-name>
            <param-value>com.mysql.jdbc.Driver</param-value>
        </init-param>
    </servlet>
    <servlet-mapping>
        <servlet-name>ConfigServlet</servlet-name>
        <url-pattern>/dbconfig</url-pattern>
    </servlet-mapping>

    <servlet>
        <servlet-name>ConfigServletAll</servlet-name>
        <servlet-class>com.yiibai.ConfigServletAll</servlet-class>
        <init-param>
            <param-name>mssql_driver</param-name>
            <param-value>com.mssql.jdbc.Driver</param-value>
        </init-param>
        <init-param>
            <param-name>username</param-name>
            <param-value>root</param-value>
        </init-param>
        <init-param>
            <param-name>passwd</param-name>
            <param-value>123456</param-value>
        </init-param>
    </servlet>
    <servlet-mapping>
        <servlet-name>ConfigServletAll</servlet-name>
        <url-pattern>/dbconfigall</url-pattern>
    </servlet-mapping>

</web-app>

將上面項(xiàng)目部署并訪(fǎng)問(wèn)URL: http://localhost:8080/ConfigServlet/dbconfigall ,如果程序沒(méi)有問(wèn)題,那么應(yīng)該會(huì)看到以下結(jié)果 -