SERVLET
SERVLET是一種特殊的CGI
與CGI不同是多線程,性能很高
package cn.mldn.lxh.servlet ;
import java.io.* ;
// HttpServlet屬于javax.servlet.http包下
// ServletException屬于javax.servlet包下
import javax.servlet.* ;
// HttpServletRequest、HttpServletResponse存放在javax.servlet.http包下
import javax.servlet.http.* ;

public class SimpleServlet extends HttpServlet
{
// 表示處理get請求
public void doGet(HttpServletRequest req,HttpServletResponse resp) throws IOException,ServletException
{
PrintWriter out = resp.getWriter() ;
out.println("<HTML>") ;
out.println("<HEAD>") ;
out.println("<TITLE>THE FIRST SERVLET</TITLE>") ;
out.println("</HEAD>") ;
out.println("<BODY>") ;
out.println("<H1>Hello World!!!</H1>") ;
out.println("</BODY>") ;
out.println("</HTML>") ;
out.close() ;
}
public void doPost(HttpServletRequest req,HttpServletResponse resp) throws IOException,ServletException
{
this.doGet(request,response) ;
}
};

/*
<servlet>
<servlet-name>simple</servlet-name>
<servlet-class>cn.mldn.lxh.servlet.SimpleServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>simple</servlet-name>
<url-pattern>/demo</url-pattern>
</servlet-mapping>
*/
輸出 Html用out.println()
很難維護
生命周期
生老病死(與人相似)
package cn.mldn.lxh.servlet ;
import java.io.* ;
import javax.servlet.* ;
import javax.servlet.http.* ;

public class LifeCycleServlet extends HttpServlet
{
// 初始化
public void init(ServletConfig config) throws ServletException
{
System.out.println("** Servlet 初始化
") ;
}
// 表示處理get請求
public void doGet(HttpServletRequest req,HttpServletResponse resp) throws IOException,ServletException
{
System.out.println("** Servlet doGet處理
") ;
}
// 處理post請求
public void doPost(HttpServletRequest req,HttpServletResponse resp) throws IOException,ServletException
{
System.out.println("** Servlet doPost處理
") ;
}
// 銷毀
public void destroy()
{
System.out.println("** Servlet 銷毀
") ;
}
};

/*
<servlet>
<servlet-name>life</servlet-name>
<servlet-class>cn.mldn.lxh.servlet.LifeCycleServlet</servlet-class>
</servlet>

<servlet-mapping>
<servlet-name>life</servlet-name>
<url-pattern>/lc</url-pattern>
</servlet-mapping>
*/
init
doservices
destroy
創建要求
繼承HttpServlet(先導入javax.servlet.*)必須在包中
在web-inf/class下
重寫兩個方法
doGet(req,resp)throws IOException(javax.servlet.http.*,java.io.*)
用PrintWriter輸出
修改WEB.XML文件,映射SERVLET
<servlet>
<servlet-name>simple</servlet-name>
<servlet-class>cn.mldn.lxh.servlet.SimpleServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>simple</servlet-name>
<url-pattern>/demo</url-pattern>//在地址中輸入的內容
</servlet-mapping>
筆記下載
servlet只初始一次(在第一次使用servlet程序后,也可以在
容器啟動時初始化servlet程序,通過修改web.xml文件)
<load-on-startup>1</load-on-startup>
doGet,doPost(doget是輸入地址,doPost是表單請求)
destroy(服務器關閉,或者長時間不用)
注意
開發框架和配置
與CGI不同是多線程,性能很高








































輸出 Html用out.println()
很難維護
生命周期
生老病死(與人相似)












































init
doservices
destroy
創建要求
繼承HttpServlet(先導入javax.servlet.*)必須在包中
在web-inf/class下
重寫兩個方法
doGet(req,resp)throws IOException(javax.servlet.http.*,java.io.*)
用PrintWriter輸出
修改WEB.XML文件,映射SERVLET








servlet只初始一次(在第一次使用servlet程序后,也可以在
容器啟動時初始化servlet程序,通過修改web.xml文件)
<load-on-startup>1</load-on-startup>
doGet,doPost(doget是輸入地址,doPost是表單請求)
destroy(服務器關閉,或者長時間不用)
注意
開發框架和配置