熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Java編程 >> Java核心技術 >> 正文

Java網絡編程-Java Socket編程(五)

2013-11-23 19:38:00  來源: Java核心技術 

  簡單的WEB服務器

  一個簡單的WEB服務器將由列表這樣構建當然還必須要對方法和回應事件進行改進簡單的服務器不會分析和存儲請求頭新的WEB服務器將分析和存儲請求為以後的處理作准備為了達到這個目的你必須有一個包含HTTP請求的類

  HTTPrequest類列表列出了一個完整的HTTPrequest類這個類必須包括一個請求頭所需的所有信息

  列表HTTPrequest類
  
  import javaio*;
  import javautil*;
  import javanet*;
  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[];
    }
   /**
   * 加入一個名稱/值對到核心數組
   */
   public void addNameValue(String name String value)
    {
    try
     {
     NameValue temp[] = new NameValue[ headerpairslength + ];
     Systemarraycopy(headerpairs temp headerpairslength);
     temp[ headerpairslength ] = new NameValue(name value);
     headerpairs = temp;
     }
    catch (NullPointerException npe)
     {
     Systemoutprintln(NullPointerException while adding namevalue:
      + npe);
     }
    }
   /**
   * 以字符串的形式歸還這個類
   */
   public String toString()
    {
    String s = method + + file + + version + ;
    for (int x = ; x < headerpairslength; x++ )
    s += headerpairs[x] + ;
    return s;
    }
   }

  NameValue類簡單地存儲了兩個字符串name 和 value當一個新的對要被加入時一個新的數組將被分配新的數組接受了舊的數組和新的成員舊的數組然後被一個新建的對象覆蓋了


From:http://tw.wingwit.com/Article/program/Java/hx/201311/27213.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.