java----服务器与客户端建立连接

TCP协议
接收端:

package com.tcp;

import java.net.ServerSocket;
import java.net.Socket;
import java.io.InputStream;

public class MyReceive {

	public static void main(String[] args) throws Exception {  //TCP协议
		//接收端
		//1创建接收端对象
		ServerSocket serverSocket = new ServerSocket(9532);
		//2获取套接字对象
		Socket accept=serverSocket.accept();
		//3获取输入流
		InputStream inputStream=accept.getInputStream();
		//4读数据
		//准备一个字节数组
		byte[] bb=new byte[1024];
		inputStream.read(bb);
		//5查看接收数据
		String result=new String(bb);
		System.out.println("接收到的数据是 "+result);
		//6关闭资源
		inputStream.close();
		accept.close();
		serverSocket.close();

	}

}

发送端:

package com.tcp;

import java.io.OutputStream;
import java.net.InetAddress;
import java.net.Socket;

public class MySend {

	public static void main(String[] args) throws Exception { //TCP
		//发送端
		//1创建socket对象,指定ip和端口
		InetAddress byName=InetAddress.getByName("127.0.0.1");
		Socket socket = new Socket(byName,9532);
		//2得到输出流
		OutputStream outputStream = socket.getOutputStream();
		//3发送数据
		//准备数据
		String data="中秋月饼";
		outputStream.write(data.getBytes());
		//4关闭资源
		outputStream.close();
		socket.close();
		System.out.println("数据发送完毕!!!");
		
		
	}

}

UDP协议
接收端:

package com.zy.receive;

import java.net.DatagramPacket;
import java.net.DatagramSocket;

public class MyReceive {

	public static void main(String[] args) throws Exception { //UDP协议
		//接收端
		//1创建港口,指定港口号
		DatagramSocket datagramSocket=new DatagramSocket(9999);
		//2创建字节数组接收数据,及创建集装箱
		byte[] bb=new byte[1024];
		DatagramPacket datagramPacket = new DatagramPacket(bb,bb.length);
		//3接收货物
		datagramSocket.receive(datagramPacket);    //线程阻塞
		//4验证货物
		String result = new String(bb);
		System.out.println("日本港口收到的货物是:"+result);
		//5关闭港口
		datagramSocket.close();
		

	}

}

发送端:

package com.zy.receive;

import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;

public class MySend {

	@SuppressWarnings("resource")
	public static void main(String[] args) throws Exception {  //UDP协议
		//发货
		//1备货【用字符串数据模拟货物】
		String data="晶晶食用油好用";
		//2准备集装箱
		//将字符串转换成字节数组
		byte[] bytes=data.getBytes();
		//得到ip地址
		InetAddress byName=InetAddress.getByName("192.168.113.92");
		DatagramPacket datagramPacket =
				new DatagramPacket(bytes,bytes.length,byName,9999 );
		//3创建港口
		DatagramSocket datagramSocket = new DatagramSocket();
		//4发货
		datagramSocket.send(datagramPacket);
		//5关闭港口
		datagramSocket.close();
		System.out.println("货物发送完毕!!!");

	}

}

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值