新聞中心
我們在Web應(yīng)用中可以使用xml來配置Servlet,給其提供初始化參數(shù),如下例:

創(chuàng)新互聯(lián)建站專業(yè)提供成都主機(jī)托管四川主機(jī)托管成都服務(wù)器托管四川服務(wù)器托管,支持按月付款!我們的承諾:貴族品質(zhì)、平民價(jià)格,機(jī)房位于中國電信/網(wǎng)通/移動(dòng)機(jī)房,資陽托管服務(wù)器服務(wù)有保障!
我們創(chuàng)建的Servlet為:ServletDemo.java,代碼如下:
- /*
- *Createdon2005-8-29
- *
- *TODOTochangethetemplateforthisgeneratedfilegoto
- *Window-Preferences-Java-CodeStyle-CodeTemplates
- */
- packagezy.pro.wd.servlet;
- importjava.io.IOException;
- importjava.io.PrintWriter;
- importjavax.sql.DataSource;
- importjavax.servlet.ServletException;
- importjavax.servlet.http.HttpServlet;
- importjavax.servlet.http.HttpServletRequest;
- importjavax.servlet.http.HttpServletResponse;
- /**//**
- *@authorzhangyi
- *
- *TODOTochangethetemplateforthisgeneratedtypecommentgoto
- *Window-Preferences-Java-CodeStyle-CodeTemplates
- */
- publicclassServletDemoextendsHttpServlet...{
- Stringmessage;
- DataSourceds;
- /**//**
- *Constructoroftheobject.
- */
- publicServletDemo()...{
- super();
- }
- /**//**
- *Destructionoftheservlet.
- */
- publicvoiddestroy()...{
- super.destroy();//Justputs"destroy"stringinlog
- //Putyourcodehere
- }
- /**//**
- *ThedoGetmethodoftheservlet.
- *
- *Thismethodiscalledwhenaformhasitstagvaluemethodequalstoget.
- *
- *@paramrequesttherequestsendbytheclienttotheserver
- *@paramresponsetheresponsesendbytheservertotheclient
- *@throwsServletExceptionifanerroroccurred
- *@throwsIOExceptionifanerroroccurred
- */
- publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)
- throwsServletException,IOException...{
- response.setContentType("text/html");
- PrintWriterout=response.getWriter();
- out.println(">");
- out.println("");
- out.println("
AServlet"); - out.println("");
- out.print("Thisis");
- out.print(this.getClass());
- out.println(",usingtheGETmethod
");- out.println(this.getServletConfig().getInitParameter("message"));
- out.println("");
- out.println("");
- out.flush();
- out.close();
- }
- /**//**
- *ThedoPostmethodoftheservlet.
- *
- *Thismethodiscalledwhenaformhasitstagvaluemethodequalstopost.
- *
- *@paramrequesttherequestsendbytheclienttotheserver
- *@paramresponsetheresponsesendbytheservertotheclient
- *@throwsServletExceptionifanerroroccurred
- *@throwsIOExceptionifanerroroccurred
- */
- publicvoidinit()throwsServletException...{
- //Putyourcodehere
- }
- }
在此Servlet中我們定義了兩個(gè)屬性message和ds。我們現(xiàn)在在web.xml中作如下配置:
- ThisisthedescriptionofmyJ2EEcomponent
- ThisisthedisplaynameofmyJ2EEcomponent
ServletDemo zy.pro.wd.servlet.ServletDemo initializethefieldofmessage message - welcomehere,thankyouforvisiting!!!
ServletDemo /servlet/ServletDemo
加粗的部分是我們要作的配置。在其中我們給message屬性設(shè)置了初始值:
welcomehere,thankyouforvisiting!!!
注意:此處我們不能同時(shí)給ds設(shè)置初始值,因?yàn)閣eb.xml的DTD中約定了只能定義一個(gè)屬性也就是在配置文件中只允許聲明一個(gè)參數(shù)值對。這樣,在我們的servlet中就可以這樣來訪問此屬性:this.getServletConfig().getInitParameter("message")。但是,有時(shí)候我們需要同時(shí)對多個(gè)屬性用XML來初始化,那么我們就需要自己來寫XML文件,同時(shí)自己來解析了。
使用XML來配置Servlet的好處:
如果不在XML中對Servlet配置,那么我們修改Servlet的屬性的話就要重新啟動(dòng)服務(wù)器,而如果使用XML來配置的話就不需要重新啟動(dòng)服務(wù)器而可以自動(dòng)生效。服務(wù)器可以自動(dòng)監(jiān)視其改變而重新裝入文檔。對企業(yè)來說,系統(tǒng)的連續(xù)運(yùn)營是很重要的。
XML來配置Servlet主要用在初始化參數(shù)在運(yùn)行過程中需要改變的情況下。
【編輯推薦】
- Servlet引擎的安裝
- 配置Servlet開發(fā)環(huán)境
- 標(biāo)簽庫中JSP Servlet調(diào)用
- 學(xué)習(xí)Java Servlet時(shí)遇到的小問題
- Servlet在session中共享鏈接
名稱欄目:如何讓XML來配置Servlet
轉(zhuǎn)載來于:http://www.dlmjj.cn/article/coojioi.html


咨詢
建站咨詢
