genericservlet 类可以说时jsdk 中最重要的类,也是最基本的类。程序员要编写servlet 应用程序,一般要继承jsdk 提供的genericservlet 类或它的子类httpservlet 类。
编程思路:下面是一个简单的例子,在服务器端执行它,就是向客户端的浏览器中输出“hello world "以及服务器的时间等信息。
helloworldservlet.java 的源代码如下:
| import java.io.*; import java.util.date; import javax.servlet.*; public class helloworldservlet extends genericservlet { string initstring; public void init(servletconfig config) throws servletexception { //父类的init方法完成对象servletconfig的存储工作。 super.init(config); initstring=new string("i have veen initialized"); } //在sercice方法中,实现对客户请求的响应。它抛出两个例外servletexception public void service(servletrequest req,servletresponse res) throws servletexception,ioexception { //类date得到服务器当前的时间。 date today = new date( ); servletoutputstream out = res.getoutputstream( ); out.println("hello world"); out.println(today.tostring()); out.println(getservletinfo()); } public void destroy( ) { } public string getservletinfo( ) { return "hello world"; } } |
编程技巧说明:
service 方法是类genericservlet 中最重要的方法。每次客户向服务器发出请求时,服务器就会调用这个方法。编程人员若想对客户的请求进行响应的话,就必须覆盖这个方法,并在这个方法中加入自己的代码来具体实现对客户的响应。service 有两个参数,servletrequest 和servletresponse。其中servletrequest 保存了客户向服务器发请求的各种属性。
对象servletresponse 用来设置如何对客户进行响应,它有以下三个方法:
* setcontenttype(string) 用来设置对客户响应的类型。
* setcontentlength(int) 用来设置对客户响应的长度。
* getoutputstream() 它返回一个写响应数据的输出流。
在例子中,我们把这个输出流传递给servletoutputstream 对象,它是java.io.outputstream 的子类,我们可以通过它把应答数据送还到客户端的浏览器中。
闽公网安备 35060202000074号