您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了“Servlet如何初始化”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“Servlet如何初始化”這篇文章吧。
有時候,我們需要僅僅是在服務啟動,而非其他更為復雜的定時任務的時候,做些初始化的工作,比如將一些數據導入到內存中等等,用Servlet的初始化可以很好的做到這一點。而初始化工作是通過Servlet中的init()方法來做的。
建一個Servlet類:AutoRunServlet.java,代碼如下:
public class AutoRunServlet extends HttpServlet { private static final long serialVersionUID = 1L; public void init() throws ServletException{ System.out.println(">>你可以在這里初始化一些東西>>"); String v = this.getInitParameter("a"); Enumeration e = this.getInitParameterNames(); while(e.hasMoreElements()){ System.out.println(">>haha>>"+e.nextElement()); } } }
在web.xml中進行配置:
<servlet> <servlet-name>AutoRunServlet</servlet-name> <servlet-class>AutoRunServlet</servlet-class>//類的包路徑 <load-on-startup>0</load-on-startup> <init-param> <param-name>a</param-name> <param-value>傳入的參數值1</param-value> </init-param> <init-param> <param-name>b</param-name> <param-value>傳入的參數值2</param-value> </init-param>
</servlet><load-on-startup>0</load-on-startup>表示Servlet的運行優先級,0表示服務一啟動,Servlet就加載進行初始化
啟動服務(比如tomcat),在控制臺中就可以看到打印出:
>>你可以在這里初始化一些東西>>這樣的文字了。
另外在啟動服務(tomcat)的時候有可能會報某種錯:
jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class
這一般是你項目中使用的Servlet包與tomcat中帶的包重復了,我使用的是tomcat 6.0.x,如果我在項目中存在著一個Servlet包:servlet-api-2.5-6.1.14.jar,那么這個時候就會報錯,因為在 TOMCAT_HOME/lib下已經存在servlet-api.jar了,所以解決方法就是只保留一個包,比如我將項目下的servlet-api- 2.5-6.1.14.jar刪除,再重啟服務就沒有問題了。
以上是“Servlet如何初始化”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。