设为首页 加入收藏

TOP

Java网络编程之TCP通信(二)
2015-07-26 20:41:53 来源: 作者: 【 】 浏览:141
Tags:Java 网络编程 TCP 通信
1000);
? ? ? ? Socket client=server.accept();
? ? ? ? PrintWriter out=new PrintWriter(client.getOutputStream(),true);
? ? ? ? BufferedReader in=new BufferedReader(new InputStreamReader(client.getInputStream()));
? ? ? ? String line=null;
? ? ? ? while((line=in.readLine())!=null)
? ? ? ? ? ? System.out.println(line);
? ? ? ? out.println("你好!");
? ? ? ? server.close();
? ? }
}


  然后在利用浏览器访问,可以看到浏览器(客户端)发给服务器端的请求头数据为:


  利用上述原理,我们可以自己编写类似IE的浏览器端(客户端)软件。首先在Tomcat的安装目录C:\apache-tomcat-7.0.62\webapps\myweb中添加一个demo.html资源,然后编写客户端,代码如下:


public class ClientDemo
{
? ? public static void main(String[] args) throws UnknownHostException, IOException
? ? {
? ? ? ? Socket s=new Socket("192.168.1.120",8080);
? ? ? ? PrintWriter out=new PrintWriter(s.getOutputStream(),true);
? ? ? ?
? ? ? ? //将请求头发给服务器
? ? ? ? out.println("GET /myweb/demo.html HTTP/1.1");
? ? ? ? out.println("Accept:*/*");
? ? ? ? out.println("Host: 192.168.1.120:11000");
? ? ? ? out.println("Connection: Keep-Alive");
? ? ? ?
? ? ? ? //输出空行,此步骤不可少
? ? ? ? out.println();
? ? ? ? BufferedReader in=new BufferedReader(new InputStreamReader(s.getInputStream()));
? ? ? ? String line=null;
? ? ? ? //返回服务器的响应文件
? ? ? ? while((line=in.readLine())!=null)
? ? ? ? {
? ? ? ? ? ? System.out.println(line);
? ? ? ? }
? ? ? ? s.close();
? ? }
}


  接下来,启动Tomcat。即双击C:\apache-tomcat-7.0.62\bin中startup.bat文件。然后运行上述客户端代码,此时可以看到Tomacat返回的响应数据:



首页 上一页 1 2 下一页 尾页 2/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇给 Lisp 程序员的 Python 简介 下一篇Java网络编程之查找Internet地址

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: