广

Java编程

  • IOS开发
  • android开发
  • PHP编程
  • JavaScript
  • ASP.NET
  • ASP编程
  • JSP编程
  • Java编程
  • 易语言
  • Ruby编程
  • Perl编程
  • AJAX
  • 正则表达式
  • C语言
  • 编程开发

    Java Socket编程(五)简单的WEB服务器

    2018-10-18 20:40:21 次阅读 稿源:互联网
    零七广告

           简单的WEB服务器
      一个简单的WEB服务器将由列表9.2这样构建.当然,还必须要对方法和回应事件进行改进.简单的服务器不会分析和存储请求头.新的WEB服务器将分析和存储请求,为以后的处理作预备.为了达到这个目的,你必须有一个包含HTTP请求的类.
      HTTPrequest类
      列表9.5列出了一个完整的HTTPrequest类.这个类必须包括一个请求头所需的所有信息.
      列表9.5.HTTPrequest类.
      
      import Java.io.*;
      import java.util.*;
      import java.net.*;
      import NameValue;
      /**
      * 这个类有一个HTTP请求的所有信息
      */
      public class HTTPrequest
      {
      public String version;
      public String method;
      public String file;
      public Socket clientSocket;
      public DataInputStream inbound;
      public NameValue headerpairs[];
      /**
      * 建立一个这个类的实例
      */
      public HTTPrequest()
      {
      version = null;
      method = null;
      file = null;
      clientSocket = null;
      inbound = null;
      inbound = null;
      headerpairs = new NameValue[0];
      }
      /**
      * 加入一个名称/值对到核心数组
      */
      public void addNameValue(String name, String value)
      {
      try
      {
      NameValue temp[] = new NameValue[ headerpairs.length + 1 ];
      System.arraycopy(headerpairs, 0, temp, 0, headerpairs.length);
      temp[ headerpairs.length ] = new NameValue(name, value);
      headerpairs = temp;
      }
      catch (NullPointerException npe)
      {
      System.out.println("NullPointerException while adding name-value:
      " + npe);
      }
      }
      /**
      * 以字符串的形式归还这个类
      */
      public String toString()
      {
      String s = method + " " + file + " " + version + " ";
      for (int x = 0; x < headerpairs.length; x++ )
      s += headerpairs[x] + " ";
      return s;
      }
      }
      
      NameValue类简单地存储了两个字符串:name 和 value.当一个新的对要被加入时,一个新的数组将被分配.新的数组接受了旧的数组和新的成员.旧的数组然后被一个新建的对象覆盖了.

    零七网部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与零七网进行文章共享合作。

    零七广告
    零七广告
    零七广告
    零七广告