国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Java > 正文

Java Socket編程(五) 簡單的WEB服務器

2020-01-31 16:52:19
字體:
來源:轉載
供稿:網友
文章來源:aspcn 作者:孫雯

簡單的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 + "/n";
for (int x = 0; x < headerpairs.length; x++ )
s += headerpairs[x] + "/n";
return s;
}
}

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

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 山东省| 巨鹿县| 夏河县| 恩施市| 紫云| 巴东县| 宁海县| 江永县| 泾川县| 盘山县| 平昌县| 宜兴市| 广灵县| 福安市| 乾安县| 西城区| 城固县| 茶陵县| 廉江市| 江孜县| 嵊泗县| 五指山市| 信丰县| 墨玉县| 唐海县| 株洲市| 青田县| 井冈山市| 阜阳市| 东乡县| 常山县| 布尔津县| 鹰潭市| 香格里拉县| 漠河县| 华蓥市| 陇南市| 抚远县| 井陉县| 涞源县| 全州县|