Java网络编程

在阅读这个博客时,默认已经熟悉TCP/UDP协议。
在java中网络编程,又被称为套接字编程。
什么是套接字?Socket就是套接字。
Socket的生命周期分为以下几个过程:
1:创建Socket链接
2:通过地址和端口找到相应的客户端/服务端
3:使用输入输出流将数据发送出去
4:关闭Socket。

下面是tcp编程中这个过程的的代码编写:
//创建Socket(接收端)
ServerSocket s1=new ServerSocket(int port);
//创建发送端
Socket s2=new Socket(InetAddress.getByName(String host));
// InetAddress.getByName(String host);的意思是获取主机名host的IP地址。

//监听(接收端特有,发送端不需要监听)
Socket socket=s1.accept();

//获取输入流
InputStream in=s2.getInputStream();
//获取输出流
OutputStream out=socket.getOutputStream();
//读取数据
byte[] bys=new byte[1024];
int len=in.read(bys);//返回的值为bys所存储了字节的大小
String string=new String(bys,0,len);//这个构造函数的作用为将bys中从0到len长度的字节转换为String同时拷贝到string;
//发送数据
String string=“hello !”;
byte[] bys=string.getBytes();
outputStream.write(bys);

//最后别忘记关闭输出流哟!
outputStream.close()

注:值得注意的是,服务端(接收端)的Socket必须分配端口。但这并不意味着服务端只能接收到这个端口传来的数据,这个port的含义是指接收端将通过该端口进行数据的接收。而发送端的端口会由系统随意分配空闲端口来使用,不必理会。

整个网络编程中的顺序如下↓

在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值