用JAVA语言如何接收客户端发送的数据包

用JAVA语言如何接收客户端发送的数据包,第1张

不写代码,这个要你自己完成的
JAVA提供了关于网络编程相应的API
客户端--->Socket
服务端-->ServerSocket
1首先new出服务端对象
new ServerSocket(int port); port为指定接收的端口号
注意,你在new客户端对象的时候
new Socket(主机名,端口号) 这里的端口号要一致
2new出服务端对象后,调用accpt()方法,接收客户端传递的数据,返回一个客户端对象, 这个客户端对象里有什么 当然是你客户端发送的数据了
3如何读取
客户端的 *** 作:
客户端写出数据至服务端 socketgetOutputStream()
客户端读取来自服务端的数据 socketgetInputStream()
服务端的 *** 作;
利用 调用的accpet方法返回的Socket对象
ServerSocket server = new ServerSocket(8080); (假设是8080端口)
Socket socket = serveraccpet();
服务端读取来自客户端的数据: socketgetInputStream();
服务端向客户端发送数据: socketgetOutputStream()
一个基本的网络通信模式就这样生成了
字节如何以网页形式显示 全是乱码
你客服端发送一个mp3 能显示出来吗
如果你想以网页显示的话,那涉及到JavaWeb编程了,servlet/jsp
QQ:170014410 可以探讨

1)如果“数据条数”定义是:客户端发送数据帧的数量,那么,服务器每当收到一次客户端的数据帧,计数就加1;例如,客户端A连续发送了“你好”,“我在这里”两条信息,服务器的计数就应该增加2;

2)服务器可以接收来自多个客户端的数据,可以分别统计每个客户端数据条数,也可以统计所以客户端数据总的条数。

针对上面两个需求,实现起来大致框架如下:

1)定义一个Dictionary<string, int> num,用来计数

Dictionary<string, int> num= new Dictionary<string, int>();

其中,泛型参数string用于表示客户端;int用于计数

2)每当服务器接收到来自客户端数据后,可以获得客户端的IPEndPoint clientEP,将clientEP转换成字符串,作为Dictionary 的键值,用来标识客户端

string client  = clientEPToString();
if(!numContainsKey(client))
{
    //在集合中添加一个客户端计数项
     numAdd(client, 0);  
}
//数据条数加1
num[client]++;

3)分别统计并显示每个客户的数据条件

foreach( var c in num)
{
    ConsoleWriteLine("客户端{0},总数{1}", cKey, cValue);
}

4)统计并显示服务器接收到所有客户端数据条数的总数

var qry = from c in numValues select c
ConsoleWriteLine("接收总数{0}", qrySum());

先include system的主文件,CI下都有INDEX的文件,根据它上边的做好了,把CORE include之后和在框架内试用的一样了。CI是我第一个学习的框架,现在都差不多忘完了。转了好多个框架之后,现在只用YII做站了。

通常情况下用户使用浏览器网页表单向服务器post提交数据,我们使用PHP的$_POST接收用户POST到服务器的数据,并进行适当的处理。但有些情况下,如用户使用客户端软件向服务端php程序发送post数据,而不能用$_POST来识别,那又该如何处理呢?
我们介绍php接受post数据的三种方式:
1$_POST方式接收数据
$_POST方式是通过 >

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/12939249.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-29
下一篇 2023-05-29

发表评论

登录后才能评论

评论列表(0条)

保存