<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 120,  comments - 19,  trackbacks - 0

    版權(quán)所有,轉(zhuǎn)載請聲明出處 zhyiwww@163.com

    在讀我自己的認(rèn)識之前 , 我們先來看一下 servet 的結(jié)構(gòu)圖 :

    servlet.png
    以下是我自己的一點淺見:

    ①  Servlet 在初始化的時候 , 是通過 init(ServletConfig? config) init() 來執(zhí)行的。

    ServletConfig 是一個接口,它怎樣傳遞給他一格對象來進(jìn)行初始化呢?其實,是這個對象是由 servlet 容器來實例化的,由容器產(chǎn)生一格 ServletConfig 的實現(xiàn)類的對象,然后傳遞給 Servlet

    結(jié)論: ServletConfig 由容器實例化

    ②  我們有些時候可能在 Servlet 初始化時給它一些固定的配置參數(shù),那么這些參數(shù)是怎樣傳遞到 Servlet 呢?

    其實,我們在 web.xml 中給 servlet 配置啟動參數(shù),在容器對 servlet 進(jìn)行初始化的時候,會收集你所配置的參數(shù),記錄在 ServletConfig 的實現(xiàn)類中,所以你才可以通過 ServletConfig 對象的

    ??? public String getInitParameter(String name);

    ??? public Enumeration getInitParameterNames();

    方法來取得你已經(jīng)配置好的參數(shù),也就是說,你對 servlet 的配置都已經(jīng)記錄在 ServletConfig 對象中了。

    結(jié)論:你對 Servlet 的配置,在 Servlet 的初始化時都由容器來收集并且記錄到 ServletConfig 的實現(xiàn)類中。

    ?

    ③  我們來看一個 Servlet 的配置

    ? <servlet>

    ??? <servlet-name>index</servlet-name>

    ??? <servlet-class>org.zy.pro.sw.servlet.IndexServlet</servlet-class>

    ??? <init-param>

    ????? <param-name>dbconfig</param-name>

    ????? <param-value>/WEB-INF/dbconfig.xml</param-value>

    ??? </init-param>

    ? </servlet>

    在此,我們實現(xiàn)對數(shù)據(jù)庫的配置文件的加載。

    當(dāng) Servlet 初始化完成后,我們可以通過

    String? dbconf=this.getServletConfig().getInitParameter("dbconfig")

    來取得我們的配置的參數(shù)的值。

    但是,我們僅能得到一個配置的字符串。之后我們可以通過配置文件取得我們的數(shù)據(jù)庫的配置參數(shù),然后對數(shù)據(jù)庫進(jìn)行初始化。

    其實我們也可以通過傳遞一個類的名字串,然后再實例化。

    ??? <init-param>

    ????? <param-name>dbconfig</param-name>

    ????? <param-value>org.zy.util.db.DBUtil</param-value>

    ?? ?</init-param>

    我們先取得配置參數(shù):

    String? dbconf=this.getServletConfig().getInitParameter("dbconfig")

    然后通過

    Class.forName(dbconf).getInstance();

    來實例化對象,就可以實現(xiàn)對數(shù)據(jù)庫的調(diào)用了。

    結(jié)論:在 web.xml 中對 Servlet 的初始化,只能傳遞字符串類型的數(shù)據(jù)

    ④  ServletContext

    ServletContext 是負(fù)責(zé)和 Servlet 的上文和下文交互,上面和 Servlet 容器交互,下面和 Servlet 中的請求和相應(yīng)進(jìn)行交互。

    ServletConfig 中, ???

    public ServletContext getServletContext(); 方法實現(xiàn)取得當(dāng)前 ServletContext 的對象。

    你可能要問, ServletContext 是一個接口,那么你如何取得他的對象呢?

    其實這個問題和 ServletConfig 相同,都是在 Servlet 進(jìn)行初始化的時候產(chǎn)生的對象,是由容器來初始化的。



    posted on 2006-09-04 17:25 阿成 閱讀(358) 評論(0)  編輯  收藏 所屬分類: JSP&SERVLET
    主站蜘蛛池模板: 羞羞漫画在线成人漫画阅读免费| 久久九九亚洲精品| 亚洲videos| 国产一区二区三区免费| 美腿丝袜亚洲综合| 四虎影视在线看免费观看| 免费又黄又爽的视频| 青青青亚洲精品国产| 免费欧洲美女牲交视频| 伊人久久国产免费观看视频| 亚洲精品无码日韩国产不卡?V| 日韩a毛片免费观看| 国产成人综合亚洲亚洲国产第一页| 国产一级黄片儿免费看| 婷婷精品国产亚洲AV麻豆不片| 在线观看的免费网站无遮挡 | 黄色免费网站网址| 亚洲一卡2卡4卡5卡6卡残暴在线| 中文字幕无码成人免费视频 | 特级毛片A级毛片100免费播放| 亚洲AV蜜桃永久无码精品| WWW免费视频在线观看播放| 亚洲AV无码久久精品色欲| 曰批全过程免费视频网址| 在线观看亚洲AV日韩A∨| 无码欧精品亚洲日韩一区夜夜嗨| xvideos永久免费入口| 亚洲成色www久久网站夜月| 久草视频在线免费| 国产亚洲福利精品一区二区| 在线永久免费观看黄网站| 深夜特黄a级毛片免费播放| 亚洲无线码一区二区三区| 亚洲人成人网毛片在线播放| 在线精品免费视频无码的| 一级一看免费完整版毛片| 久久久亚洲欧洲日产国码是AV| 女人体1963午夜免费视频| 在线aⅴ亚洲中文字幕| 中文字幕第一页亚洲| 久久久久久精品免费免费自慰|