我正在研究TCP和UDP只是为了学习网络和协议如何在Java中工作的基础知识,我教授给我的任务是:
连接到TCP服务器的TCP客户端,它与连接到UDP服务器的UDP客户端通信,后者从数据库获取/更改数据。
我已经设置好所有工作,但是现在TCP服务器将UDP客户端称为对象,并通过方法调用而不是通过互联网传递其信息。
对于TCP我正在使用服务器套接字和输入流/缓冲流读取器,而对于UDP我正在使用数据报包。所以我不确定如何直接从一个发送到另一个,或者它是否可能。
预先感谢您提供任何帮助/建议/指导!
Jona的
**编辑:
通过方法调用的意思是:
//In TCPServer class
UDPClient udpc = new UDPClient();
String result = udpc.GetFromUDPServer(clientCommand);
//In UDPClient class
public class UDPClient{
public String GetFromUDPServer(String clientCommand){
try{
//Create a datagram socket
DatagramSocket sock = new DatagramSocket();
byte[] buffer = clientCommand.getBytes("UTF-8");
InetAddress ipAddress = InetAddress.getByName("localhost");
DatagramPacket packet = new DatagramPacket(buffer, buffer.length, ipAddress, 447);
...