TCP通讯

/*
TCP传输:客户端和服务端
Socket:实现客户端的套接字,可以构造空、地址和端口的,通过api发现,该对象建立时就要指定主机,因为tcp面向连接,所以
在建立Socket服务时,就要有服务端的额存在,并连接成功,形成通路。

步骤:
1、建立Socket服务,并指定主机和端口。
ServerSocket:
*/

import java.io.*;
import java.net.*;
import java.lang.Exception;
class TcpClient
{
	public static void main(String[] args) throws Exception
	{
		Socket s = new Socket("122.88.30.178",10001);
		OutputStream os = s.getOutputStream();
		os.write("tcp start".getBytes());
	}
}

/*
服务器端:
1、创建服务器端socket服务,并监听一个端口、ServerSocket
2、获取连接过来的客户端对象。accept()方法时阻塞式
3、客户端如果发来数据,那么服务器端要使用客户端对象的对象,并获取该客户端对象的读取流操作。
4、关闭服务器(一般不关闭)
*/
class TcpServer
{
	public static void main(String[] args) throws Exception
	{
		// 创建服务端socket服务
		ServerSocket ss = new ServerSocket(10001); 
		//获取客户端的对象
		Socket s = ss.accept();

		//获取客户端发送的数据,使用客户端对象获取流
		InputStream in = s.getInputStream();
		byte [] buf = new byte[1024];
		int len = in.read(buf);
		System.out.println(new String(buf,0,len));
		String ip = s.getInetAddress().getHostAddress();
		System.out.println(ip + "connected");

	}

}
class  TcpDemo
{
	public static void main(String[] args) 
	{
		
	}
}

posted @ 2015-01-24 21:32  静以养身 俭以养德  阅读(115)  评论(0编辑  收藏  举报