ServerSocket模拟服务器端
public class ServerSocketModel{
public static void main(String[] args) throws Exception {
ServerSocket serverSocket = new ServerSocket(9999);
System.out.println("服务器已启动...............");
while (true) {
Socket socket = serverSocket.accept();
System.out.println("客户端已连接IP地址为:" + socket.getInetAddress());
InputStream inputStream = socket.getInputStream();
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream));
String readContent;
while ((readContent = bufferedReader.readLine()) != null) {
System.out.println("ReadFromClient: " + readContent);
if (readContent.length() == 0)
break;
}
//封装输出流
OutputStream outputStream = socket.getOutputStream();
BufferedWriter bufferedWriter = new BufferedWriter(new OutputStreamWriter(outputStream));
//封装输入流
System.out.println("读取完毕,准备输出返回信息.");
bufferedWriter.write("HTTP/1.1 200 OK\n");
bufferedWriter.write("Content-Length: 10\n");
bufferedWriter.write("Content-Type: text/html;charset=utf8\n");
bufferedWriter.write("\n"); // 区分HEAD区和正文区
bufferedWriter.write("1234567890");
System.out.println("返回信息输出完毕.");
bufferedWriter.flush();
socket.close();
System.out.println("客户端连接已释放.");
}
}
}
httpclient模拟浏览器调用server端
public class HttpClientModel {
public static void main(String[] args) {
HttpClient httpClient = new DefaultHttpClient();
HttpGet httpGet = new HttpGet("http://127.0.0.1:9999");
httpGet.addHeader("Accept","text/html, application/xhtml+xml, */*");
httpGet.addHeader("Accept-Language","zh-CN,en-US;q=0.5");
httpGet.addHeader("User-Agent","Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)");
httpGet.addHeader("Accept-Encoding","gzip, deflate");
httpGet.addHeader("Host","localhost:9999");
httpGet.addHeader("Connection","Keep-Alive");
HttpResponse httpResponse = httpClient.execute(httpGet);
InputStream inputStream = httpResponse.getEntity().getContent();
System.err.println("从服务器端获取的内容为:" + EntityUtils.toString(httpResponse.getEntity()));
}
}
分享到:
相关推荐
serversocket web服务器
本文介绍一种用Java的Socket和ServerSocket实现服务器和客户机通讯的的方法。原理是在服务器端建立ServerSocket端口并监听,接收到客户端的连接请求时建立Socket,得到Socket的输入输出流。在客户端新建Socket并获得...
功能介绍: 1、服务端:手机端新建线程,创建serverSocket监听8080端口; 2、客户端:使用webView的方法loadURl("http://172.0.0.1:8080")访问本地;
delphi socket(ClientSocket,ServerSocket)简单实例
我的csdn java第“22.1 网络编程:软件结构、网络通信协议、UDP与TCP协议、网络编程三要素、客户端Socket类、客户端ServerSocket类、客户上传文件到服务器、模拟B\S服务器“练习代码
在Eclipse写自己的简单服务器,使用ServerSocket,线程池。实现HTTP的GET、POST、HEAD请求
描述如何在WEB服务器启动时加载一个Java ServerSocket服务,单机程序也可借鉴
较为完备的Delphi开发环境下的 ServerSocket和ClientSocket 的通信实例, 初学者易掌握的服务器和客户端之间的通信技巧
ServerSocket实现一个简单的Web服务器demo
简单的使用ServerSocket模拟下,Tomcatweb服务器。
自己用ServerSocket ClientSock 做的2个程序
Socket与ServerSocket编程实践聊天,服务器和客户端频繁通信
delphi 异步socket(ClientSocket,ServerSocket)实例,在XE2和XE7 上测试通过,其它没有测试。
Java 实例 - ServerSocket 和 Socket 通信实例源代码+详细指导教程.zip
socket和serversocket利用IO流编写的多线程连接相互发送消息
ServerSocket的close()方法使服务器释放占用的端口,并且断开与所有客户的连接。当一个服务器程序运行结束时,即使没有执行ServerSocket的close()方法,操作系统也会释放这个服务器占用的端口。因此,服务器程序并不...
1.在服务器端通过指定一个用来等待的连接的端口号创建一个ServerSocket实例。 2.在客户端通过规定一个主机和端口号创建一个Socket实例,连到服务器上。 3.服务器端在本地建立一个文本文件存储与客户端互传字符串的...
Socket+ServerSocket代码
Java实现基于TCP的Socket&ServerSocket通讯
本资源是java中socket与serverSocket连接的例子,包括客户端和服务器端的程序代码