Java Servlet 编程及应用之三-Java基础-Java-编程开发

时间:2022-04-18 11:31:52
<script type="text/javascript">google_ad_client = "pub-8800625213955058";/* 336x280, 创建于 07-11-21 */google_ad_slot = "0989131976";google_ad_width = 336;google_ad_height = 280;//</script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>  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 的子类,我们可以通过它把应答数据送还到客户端的浏览器中。