教育行業(yè)A股IPO第一股(股票代碼 003032)

全國(guó)咨詢/投訴熱線:400-618-4000

怎樣實(shí)現(xiàn)Servlet程序的自動(dòng)加載?

更新時(shí)間:2022年04月11日15時(shí)39分 來(lái)源:傳智教育 瀏覽次數(shù):

在實(shí)際開(kāi)發(fā)時(shí),有時(shí)候會(huì)希望某些Servlet程序可以在Tomcat啟動(dòng)時(shí)隨即啟動(dòng)。例如,當(dāng)啟動(dòng)一個(gè)Web項(xiàng)目時(shí),首先需要對(duì)數(shù)據(jù)庫(kù)信息進(jìn)行初始化。這時(shí),只需要使用web.xml文件中<load-on-startup>元素,將初始化數(shù)據(jù)庫(kù)的Servlet配置為隨著web應(yīng)用啟動(dòng)而啟動(dòng)的Servlet即可。

<load-on-startup>元素是<servlet>元素的一個(gè)子元素,它用于指定Servlet被加載的時(shí)機(jī)和順序。在<load-on-startup>元素中,設(shè)置的值必須是一個(gè)整數(shù)。如果這個(gè)值是一個(gè)負(fù)數(shù),或者沒(méi)有設(shè)定這個(gè)元素,Servlet容器將在客戶端首次請(qǐng)求這個(gè)Servlet時(shí)加載它;如果這個(gè)值是正整數(shù)或0,Servlet容器將在Web應(yīng)用啟動(dòng)時(shí)加載并初始化Servlet,并且<load-on-startup>的值越小,它對(duì)應(yīng)的Servlet就越先被加載。接下來(lái),將文件3-1 HelloWorldServlet.java配置為T(mén)omcat啟動(dòng)時(shí)自動(dòng)加載的Servlet,具體配置方式如下所示:

<servlet>
    <servlet-name>HelloWorldServlet</servlet-name>
    <servlet-class>
        cn.itcast.firstapp.servlet.HelloWorldServlet
    </servlet-class>
    <!--設(shè)置Servlet在Web應(yīng)用啟動(dòng)時(shí)初始化-->
    <load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
    <servlet-name>HelloWorldServlet</servlet-name>
    <url-pattern>/helloWorldServlet</url-pattern>
</servlet-mapping>

啟動(dòng)Tomcat服務(wù)器,在Tomcat控制臺(tái)輸出的信息中,會(huì)發(fā)現(xiàn)如圖3-12所示的內(nèi)容。

Tomcat運(yùn)行結(jié)果

運(yùn)行結(jié)果

從圖3-12中可以看出,HelloWorldServlet的初始化信息被打印了出來(lái),由此說(shuō)明,HelloWorldServlet在Tomcat啟動(dòng)時(shí)就被自動(dòng)加載并且初始化了。







猜你喜歡:

Servlet對(duì)象的生命周期詳細(xì)介紹

在web.xml文件中配置Servlet哪些信息需要配置?

Servlet是什么?有哪些優(yōu)點(diǎn)?

獲取servlet轉(zhuǎn)發(fā)和響應(yīng)重定向的方式是什么?

傳智教育JavaEE培訓(xùn)課程

0 分享到:
和我們?cè)诰€交談!