在web.xml配置虛擬
//重寫的5個(gè)方法
public class ServletDemo1 implements Servlet{
public void service(ServletRequest arg0, ServletResponse arg1)
throws ServletException, IOException {
arg1.getWriter().write("hello demo1...");
}
public void destroy() {
}
public ServletConfig getServletConfig() {
return null;
}
public String getServletInfo() {
return null;
}
public void init(ServletConfig arg0) throws ServletException {
}
}
Servlet的聲明周期
- 第一次請(qǐng)求時(shí),servlet實(shí)例通過(guò)init()被創(chuàng)建并初始化,不管請(qǐng)求多少次腻暮,都只調(diào)用一次
- 實(shí)例通過(guò)service方法提供服務(wù)
- 服務(wù)器關(guān)閉或手動(dòng)移除服務(wù)時(shí),調(diào)用destroy方法進(jìn)行銷毀
Servlet的接口實(shí)現(xiàn)關(guān)系
開(kāi)發(fā)步驟
- 編寫一個(gè)類讥珍,繼承HttpServlet
- 重寫 doGet 和 doPost 方法
- 在 web.xm l配置
修改模板
//為了修改模板本身帶來(lái)的不必要的注釋
* 先找到MyEclipse的安裝路徑
* D:\MyEclipse\Common\plugins\com.genuitec.eclipse.wizards_9.0.0.me201211011550.jar
* 千萬(wàn)別解壓,右鍵-選擇壓縮工具打開(kāi)-templates--Servlet.java
自動(dòng)加載配置
正整數(shù)越小毁菱,優(yōu)先級(jí)越高
配置Servlet路徑映射配置
虛擬路徑即為:<url-pattern>/demo</url-pattern>
web開(kāi)發(fā)中的路徑問(wèn)題
- 相對(duì)路徑
- hello
- ./hello
- ../myweb/hello
- 絕對(duì)路徑
- /hello
- /myweb/hello
- 客戶端絕對(duì)路徑與服務(wù)器端絕對(duì)路徑的區(qū)別
- 客戶端絕對(duì)路徑 /day/demo5 需要寫項(xiàng)目名
- 服務(wù)器端絕對(duì)路徑 /demo5 不能寫項(xiàng)目名
關(guān)于缺省的Servlet
<servlet>
<servlet-name>default</servlet-name>
<servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class>
<init-param>
<param-name>debug</param-name>
<param-value>0</param-value>
</init-param>
<init-param>
<param-name>listings</param-name>
<param-value>true</param-value> //默認(rèn)是false,可以改為true
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>