第8章
JavaServlet基础JavaServlet基础
Servlet技术就是在服务器端创建响JavaServlet技术就是在服务器端创建响应用户请求对象的技术,应用户请求对象的技术,被创建的对象习惯上称为一个Servlet对象。Servlet对象习惯上称为一个Servlet对象。
1.Servlet对象的创建与使用对象的创建与使用
编写一个创建Servlet对象的类就是编写一个特殊类的子类,这个特殊的类就是javax.servlet.http包中的HttpServlet类。HttpServlet类实现了Servlet接口,实现了响应用户的方法.
2.部署Servlet2.部署Servlet部署
1.如果Servlet类Hello的包名是:star.moon.首先将
Servlet源文件编译生成字节码文件:Hello.class,然后复制到:
Web服务目录\WEB-INF\classes\star\moon
2.
编写
web.
xml文件
hellostar.moon.Hellohello/lookHello 3.运行运行Servlet运行
根据web.xml部署文件来请求服务器执行一个部署文件来请求服务器执行一个Servlet根据web.xml部署文件来请求服务器执行一个Servletweb对象web.xml文件中
标记指定的格文件中标记指定的格式输入请求,式输入请求,例如:例如http://127.0.0.1:8080/chaper8/lookHello
Servlet的生命周期5.Servlet的生命周期
(1)初始化Servlet对象。Servlet对象第一次被初始化Servlet对象。Servlet对象第一次被Servlet对象请求加载时,服务器初始化这个Servlet对象,Servlet对象请求加载时,服务器初始化这个Servlet对象,即创建一个Servlet对象,对象调用init()Servlet对象init()方即创建一个Servlet对象,对象调用init()方法完成必要的初始化工作。法完成必要的初始化工作。诞生的Servlet对象再调用service()Servlet对象再调用service()方法响(2)诞生的Servlet对象再调用service()方法响应客户的请求。应客户的请求。当服务器关闭时,调用destroy()方法,destroy()方法(3)当服务器关闭时,调用destroy()方法,消Servlet对象对象。灭Servlet对象。
Servlet的共享变量6.Servlet的共享变量
Servlet类是HttpServlet的一个子类,Servlet类是HttpServlet的一个子类,类是HttpServlet的一个子类那么在编写子类时就可以声明某些成员变量。当用户请求加载Servlet成员变量。当用户请求加载Servlet时,服务器分别为每个用户启动一个线程,在该线程中,Servlet调用个线程,在该线程中,Servlet调用service()方法响应客户请求方法响应客户请求,service()方法响应客户请求,那么Servlet类的成员变量是被所有线程Servlet类的成员变量是被所有线程共享的数据。共享的数据。
doGet()方法和doPost()方法方法和doPost()7.doGet()方法和doPost()方法
可以在Servlet类中重写doPost()或可以在Servlet类中重写doPost()或doGet()Servlet类中重写doPost()方法来响应用户的请求,方法来响应用户的请求,如果不论用户请求类型是POST还是GETPOST还是GET,类型是POST还是GET,服务器的处理过程完全相同,那么我们可以只在doPost()doPost()方法中全相同,那么我们可以只在doPost()方法中编写处理过程,而在doGet()doGet()方法中再调用编写处理过程,而在doGet()方法中再调用doPost()方法即可,或只在doGet()方法中doPost()方法即可,或只在doGet()方法中方法即可doGet()编写处理过程,而在doPost()doPost()方法中再调用编写处理过程,而在doPost()方法中再调用doGet()方法方法。doGet()方法。如果根据请求的类型进行不同的处理,同的处理,就需在两个方法中编写不同的处理过程。理过程。