欢迎光临
我们一直在努力

Java Socket编程(五)-JSP教程,Java技巧及代码

建站超值云服务器,限时71元/月

简单的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.当一个新的对要被加入时,一个新的数组将被分配.新的数组接受了旧的数组和新的成员.旧的数组然后被一个新建的对象覆盖了.

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » Java Socket编程(五)-JSP教程,Java技巧及代码
分享到: 更多 (0)