java udp 连接_Java UDP连接
我正在使用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连接相关推荐
- java udp聊天_Java UDP实现聊天功能代码
我以前经常写的是基于TCP的网络编程,由于TCP建立连接鼻血要经过三次握手连接,服务器端需要阻塞式等待客户端的连接.而UDP则是可以直接向目的地址的目的端口上发送数据包,由于它只负责发送出去就好,不管 ...
- java http 状态_Java HTTP连接似乎保持打开状态
我已经在Java中创建了到私有API的连接 String urlRequest = "https://localhost:8080/orders/create"; String u ...
- java c3p0 存储过程_JAVA Spring 连接池 调用 Oracle 存储过程的问题?
求助,JAVA Spring 连接池 调用 Oracle 存储过程的问题?在Spring中配置了c3P0的连接池,在调用Oracle的存储过程时,报错[code]java.lang.ClassCast ...
- java 远程连接_java实现连接远程服务器并执行命令的基本原理
一.所需jar包 需要借助Ganymed SSH的jar包: ganymed-ssh2-build210.jar 二.实现原理 Ganymed SSH-2 java在整个访问过程中担当SSH的客户端 ...
- java 打印机编程_JAVA实现连接本地打印机并打印文件的实现代码
JAVA实现连接本地打印机并打印文件的实现代码 发布时间:2020-08-31 15:52:25 来源:脚本之家 阅读:96 作者:piaoyunlive 实现代码一 import javax.pri ...
- java ftpclient 池_Java FTPClient连接池的实现
最近在写一个FTP上传工具,用到了Apache的FTPClient,为了提高上传效率,我采用了多线程的方式,但是每个线程频繁的创建和销毁FTPClient对象势必会造成不必要的开销,因此,此处最好使用 ...
- java的数据连接_java中连接各种数据的方法
1.oracle thin驱动连接字符串:jdbc:oracle:thin:用户名/密码@localhost:1521:cake 驱动类:oracle.jdbc.driver.OracleDriver ...
- java udp 服务器_Java UDP 服务器与客户端的问题
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 package UDP_Client; import java.io.BufferedReader; import java.io.IOException ...
- java 连接多实例_Java如何连接多实例SQL Server?
异常产生 Java连接SQL Server一般字符串:jdbc:sqlserver://127.0.0.1:1433;DatabaseName=数据库名; 大家应该知道:如果机器上安装的是SQLSer ...
- NetworkComms V3 之支持TCP连接和UDP连接
NetworkComms V3 无缝的支持TCP连接和UDP连接. 您可以很容易的创建这两种连接 //创建一个连接信息对象 ConnectionInfo connInfo = new Connecti ...
最新文章
- 高校复试计算机英语文献翻译,专业文献英语翻译复试.pdf
- CCNA实验解析——VLAN间的路由的配置
- php什么是阵列,php – 功能阵列的替代方法?
- WEB API 系列(二) Filter的使用以及执行顺序
- RAC环境创建本地数据文件的解决方法
- linux下VScode开发ESP32,VsCode设置ESP32工具链+刨根问底点灯
- Oracle数据库空间突然增大,Oracle数据库突然宕机,处理方案
- matplotlib fontdict 字体设置
- rhel linux 自动 fsck,red hat as 4 启动报错:checking filesystems fsck.ext3: bad magic number ......
- 管理感悟:减少代码量的好办法
- 多个dwg文件批量合并_插件分享 | 多张单独内容DWG快速合并到一个文件
- 完全卸载VS 2015各版本
- 应用程序无法正常启动 0xc0150002
- 回溯算法符号三角形java_算法设计与分析——符号三角形问题(回溯法)
- vue实现输入六位密码支付页面
- python中match函数的用法_浅谈Python中re.match()和re.search()的使用及区别
- 通俗易懂的讲解 网关是什么
- WebServer项目的亮点和难点
- 专升本高数——第八章 多元函数积分学【学习笔记】
- python工程打包成可执行文件
热门文章
- 三菱GXWorks2 程序仿真功能
- 学生签到系统c代码_C语言之学生管理系统代码(完整)
- 数据库小白 T-SQL练习500题 超详细!带素材!持续更新中~
- java socket中文编码_Java Socket 中的编码问题
- Matlab------在Matlab中如何画圆
- 现代密码学概论|密码学基础--仿射密码实验C语言(文末附上C语言源代码)
- 快速去除PDF的打开密码和限制(四种方法)
- 高等数学学习笔记——第五十七讲——平面与直线的位置关系
- 计算机停电组态丢失,基于MCGS组态软件的计算机集散控制系统的设计
- Win7 SP1 安装python 3.8时,提示 KB2533623 update is required to continue