(javasocket通信实例)(java socket 框架)

UDP(数据报)协议的通信实例
马克-to-win:在UDP编程当中,技术上没有一个服务器和客户端的概念,即没有类似于TCP中的ServerSocket类,只有主动和被动之说,客户端和服务器都用DatagramSocket(MyPORT)来绑定到一个端口,发送和接收dataPacket,它们是对等的双方。不过通常来讲,先发送数据的被认为是客户端。in UDP, there is no concept of server or client, only active and passive, client and server both use new DatagramSocket(MyPORT) to bind to a port to use the port to send and receive the dataPacket, the counterpart which initially send the dataPacket is deemed as the client. unlike the TCP protocol, there, there is really ServerSocket.
马克- to-win:马克 java社区:防盗版实名手机尾号: 73203。
UDP通信主要有两个类,DatagramPacket是数据容器,它携带自己来自何处,以及打算去哪里的信息。DatagramSocket用来发送或接收DatagramPacket。
DatagramPacket不仅需要包含正式的数据,也要包含网络地址以及端口号,以决定它的目的地。

例:2.3.1(客户端写,服务器端读)

服务器端:

import java.net.*;
import java.io.*;
import java.util.*;
public class TestMark_to_win {
static final int MyPORT = 1711;
public static void main(String[] args) throws IOException {
byte[] bufreceive = new byte[1000];
DatagramPacket packetreceive = new DatagramPacket(bufreceive,
bufreceive.length);//测试结果bufreceive.length是1000
DatagramSocket socket;
socket = new DatagramSocket(MyPORT);
// Block until a datagram appears:
socket.receive(packetreceive);
String stringreceive = new String(packetreceive.getData(), 0,
packetreceive.getLength());
System.out.println(stringreceive);
socket.close();
}
}

客户端程序:
import java.net.*;
import java.io.*;
import java.util.*;
public class Test {
static final int MyPORT = 1710;
static final int SERVERPORT = 1711;
public static void main(String[] args) throws IOException {
byte[] bufsend = new byte[1000];
DatagramSocket client;
InetAddress destination = InetAddress.getByName("localhost");
client = new DatagramSocket(MyPORT);
bufsend = "java study".getBytes();// string encode to a byte array
DatagramPacket sendpacket = new DatagramPacket(bufsend, bufsend.length,
destination, SERVERPORT);

篇幅有限更多请见扩展链接:http://www.mark-to-win.com/tutorial/java_9_UDPSimplestExample.html

声明:我要去上班所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流,版权归原作者马克java社区所有,原文出处。若您的权利被侵害,请联系删除。

本文标题:(javasocket通信实例)(java socket 框架)
本文链接:https://www.51qsb.cn/article/m8ocy.html

(0)
打赏微信扫一扫微信扫一扫QQ扫一扫QQ扫一扫
上一篇2023-01-20
下一篇2023-01-20

你可能还想知道

发表回复

登录后才能评论