我正在使用Netbeans IDE尝试在客户端和服务器之间建立UDP连接,这是一个简单的程序,UDPClient将字符串发送到UDPServer,服务器将字符串大写并将其发送回客户端.我做了客户端和服务器端在一个单独的项目中.

我的客户端UDPClient的类代码:

package udpclient;

import java.io.*;

import java.net.*;

public class UDPClient {

public static void main(String[] args) throws IOException{

//get input from user

BufferedReader user_in = new BufferedReader(

new InputStreamReader(System.in));

//create udp socket connection

DatagramSocket socket = new DatagramSocket();

//creat buffers to process data

byte[] inData = new byte[1024];

byte[] outData = new byte[1024];

//get ip destination wanted

InetAddress IP = InetAddress.getByName("localhost");

//read data from user

System.out.println("Enter Data to send to server: ");

outData = user_in.readLine().getBytes();

/*

* make pkts for interaction

*/

//send pkts

DatagramPacket sendPkt = new DatagramPacket(outData, outData.length, IP, 9876);

socket.send(sendPkt);

//receive pkts

DatagramPacket recievePkt = new DatagramPacket(inData, inData.length);

socket.receive(recievePkt);

System.out.println("Replay from Server: "+recievePkt.getData());

}

}

和我的服务器端类UDPServer:

package udpserver;

import java.io.*;

import java.net.*;

public class UDPServer {

public static void main(String[] args) throws IOException{

// TODO code application logic

//connection

DatagramSocket socket = new DatagramSocket();

//pkt buffers

byte[] inServer = new byte[1024];

byte[] outServer = new byte[1024];

//receive pkt

DatagramPacket rcvPkt = new DatagramPacket(inServer,inServer.length);

socket.receive(rcvPkt);

//display receive

System.out.println("Packet Received!");

//retrive pkt info to send response to same sender

InetAddress IP = rcvPkt.getAddress();

int port = rcvPkt.getPort();

//process data

String temp = new String(rcvPkt.getData());

temp = temp.toUpperCase();

outServer = temp.getBytes();

//send response packet to sender

DatagramPacket sndPkt = new DatagramPacket(outServer, outServer.length, IP, port);

socket.send(sndPkt);

}

}

make计数程序正常运行并且不输出错误.服务器根本没有收到数据包,它没有与客户端交互.为什么会这样?

解决方法:

您尚未在服务器中指定任何侦听端口,因此服务器会侦听随机可用端口.

在服务器端试试这个

DatagramSocket socket = new DatagramSocket(9876);

标签:udp,java,sockets,netbeans,network-programming

来源: https://codeday.me/bug/20190609/1205075.html

java udp 连接_Java UDP连接相关推荐

  1. java udp聊天_Java UDP实现聊天功能代码

    我以前经常写的是基于TCP的网络编程,由于TCP建立连接鼻血要经过三次握手连接,服务器端需要阻塞式等待客户端的连接.而UDP则是可以直接向目的地址的目的端口上发送数据包,由于它只负责发送出去就好,不管 ...

  2. java http 状态_Java HTTP连接似乎保持打开状态

    我已经在Java中创建了到私有API的连接 String urlRequest = "https://localhost:8080/orders/create"; String u ...

  3. java c3p0 存储过程_JAVA Spring 连接池 调用 Oracle 存储过程的问题?

    求助,JAVA Spring 连接池 调用 Oracle 存储过程的问题?在Spring中配置了c3P0的连接池,在调用Oracle的存储过程时,报错[code]java.lang.ClassCast ...

  4. java 远程连接_java实现连接远程服务器并执行命令的基本原理

    一.所需jar包 需要借助Ganymed SSH的jar包:  ganymed-ssh2-build210.jar 二.实现原理 Ganymed SSH-2 java在整个访问过程中担当SSH的客户端 ...

  5. java 打印机编程_JAVA实现连接本地打印机并打印文件的实现代码

    JAVA实现连接本地打印机并打印文件的实现代码 发布时间:2020-08-31 15:52:25 来源:脚本之家 阅读:96 作者:piaoyunlive 实现代码一 import javax.pri ...

  6. java ftpclient 池_Java FTPClient连接池的实现

    最近在写一个FTP上传工具,用到了Apache的FTPClient,为了提高上传效率,我采用了多线程的方式,但是每个线程频繁的创建和销毁FTPClient对象势必会造成不必要的开销,因此,此处最好使用 ...

  7. java的数据连接_java中连接各种数据的方法

    1.oracle thin驱动连接字符串:jdbc:oracle:thin:用户名/密码@localhost:1521:cake 驱动类:oracle.jdbc.driver.OracleDriver ...

  8. java udp 服务器_Java UDP 服务器与客户端的问题

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 package UDP_Client; import java.io.BufferedReader; import java.io.IOException ...

  9. java 连接多实例_Java如何连接多实例SQL Server?

    异常产生 Java连接SQL Server一般字符串:jdbc:sqlserver://127.0.0.1:1433;DatabaseName=数据库名; 大家应该知道:如果机器上安装的是SQLSer ...

  10. NetworkComms V3 之支持TCP连接和UDP连接

    NetworkComms V3 无缝的支持TCP连接和UDP连接. 您可以很容易的创建这两种连接 //创建一个连接信息对象 ConnectionInfo connInfo = new Connecti ...

最新文章

  1. 高校复试计算机英语文献翻译,专业文献英语翻译复试.pdf
  2. CCNA实验解析——VLAN间的路由的配置
  3. php什么是阵列,php – 功能阵列的替代方法?
  4. WEB API 系列(二) Filter的使用以及执行顺序
  5. RAC环境创建本地数据文件的解决方法
  6. linux下VScode开发ESP32,VsCode设置ESP32工具链+刨根问底点灯
  7. Oracle数据库空间突然增大,Oracle数据库突然宕机,处理方案
  8. matplotlib fontdict 字体设置
  9. rhel linux 自动 fsck,red hat as 4 启动报错:checking filesystems fsck.ext3: bad magic number ......
  10. 管理感悟:减少代码量的好办法
  11. 多个dwg文件批量合并_插件分享 | 多张单独内容DWG快速合并到一个文件
  12. 完全卸载VS 2015各版本
  13. 应用程序无法正常启动 0xc0150002
  14. 回溯算法符号三角形java_算法设计与分析——符号三角形问题(回溯法)
  15. vue实现输入六位密码支付页面
  16. python中match函数的用法_浅谈Python中re.match()和re.search()的使用及区别
  17. 通俗易懂的讲解 网关是什么
  18. WebServer项目的亮点和难点
  19. 专升本高数——第八章 多元函数积分学【学习笔记】
  20. python工程打包成可执行文件

热门文章

  1. 三菱GXWorks2 程序仿真功能
  2. 学生签到系统c代码_C语言之学生管理系统代码(完整)
  3. 数据库小白 T-SQL练习500题 超详细!带素材!持续更新中~
  4. java socket中文编码_Java Socket 中的编码问题
  5. Matlab------在Matlab中如何画圆
  6. 现代密码学概论|密码学基础--仿射密码实验C语言(文末附上C语言源代码)
  7. 快速去除PDF的打开密码和限制(四种方法)
  8. 高等数学学习笔记——第五十七讲——平面与直线的位置关系
  9. 计算机停电组态丢失,基于MCGS组态软件的计算机集散控制系统的设计
  10. Win7 SP1 安装python 3.8时,提示 KB2533623 update is required to continue