Java TCP发送与接收

IP地址?端口号?主机名?

什么是Socket?

什么是UDP?

什么是TCP?

UDP和TCP区别?

以上问题请自行百度,有标准解释,此处不再赘述,直接上干货!

实例:

 

发送端: 

public class TCPClient {
	public static void main(String[] args) throws  IOException {
		//创建Socket对象
		Socket s = new Socket(InetAddress.getByName("127.0.0.1"),10086);
		//获取输出流对象
		OutputStream os = s.getOutputStream();
		//发送数据
		String str = "This TCP,im comming";
		os.write(str.getBytes());
		//释放
		s.close();
	}

}

接收端:

public class TCPServer {
	public static void main(String[] args) throws IOException {
		//创建Socket对象
		ServerSocket ss = new ServerSocket(10086);
		//监听(阻塞)
		Socket s = ss.accept();
		//获取输入流对象
		InputStream is = s.getInputStream();
		//获取数据
		byte[] bys = new byte[1024];
		int len;
		len = is.read(bys);
		//输出数据
		InetAddress address = s.getInetAddress();
		System.out.println("sender:"+address);
		System.out.println(new String(bys,0,len));
		//释放
		s.close();
		/*
		 * 说明:
		 * 	当你访问百度的时候,退出了,它的服务就关了吗?   不关,还会继续监听
		 */
		
	}

}

测试:

先运行server服务端,开启监听

在开启发送端

服务器就会监听到发送端发来的消息

Java TCP发送与接收_第1张图片

 

 

 

最后附上API 文档说明,防止有些人看不懂代码

Java TCP发送与接收_第2张图片

Java TCP发送与接收_第3张图片

你可能感兴趣的:(Java,SE)