第一步 充分理解Socket    1.什么是socket    所谓socket通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄。应用程序通常通过"套接字"向网络发出请求或者应答网络请求。    以J2SDK-1.3为例,Socket和ServerSocket类库位于java.net包中。ServerSocket用于服务器端,Socket是建立网络连接时使用的。在连接成功时,应用程序两端都会产生一个Socket实例,操作这个实例,完成所需的会话。对于一个网络连接来说,套接字是平等的,并没有差别,不因为在服务器端或在客户端而产生不同级别。不管是Socket还是ServerSocket它们的工作都是通过SocketImpl类及其子类完成的。    重要的Socket API:    java.net.Socket继承于java.lang.Object,有八个构造器,其方法并不多,下面介绍使用最频繁的三个方法,其它方法大家可以见JDK-1.3文档。    . Accept方法用于产生"阻塞",直到接受到一个连接,并且返回一个客户端的Socket对象实例。"阻塞"是一个术语,它使程序运行暂时"停留"在这个地方,直到一个会话产生,然后程序继续;通常"阻塞"是由循环产生的。    . getInputStream方法获得网络连接输入,同时返回一个IutputStream对象实例,。    . getOutputStream方法连接的另一端将得到输入,同时返回一个OutputStream对象实例。    注意:其中getInputStream和getOutputStream方法均会产生一个IOException,它必须被捕获,因为它们返回的流对象,通常都会被另一个流对象使用。    2.如何开发一个Server-Client模型的程序    开发原理:    服务器,使用ServerSocket监听指定的端口,端口可以随意指定(由于1024以下的端口通常属于保留端口,在一些操作系统中不可以随意使用,所以建议使用大于1024的端口),等待客户连接请求,客户连接后,会话产生;在完成会话后,关闭连接。    客户端,使用Socket对网络上某一个服务器的某一个端口发出连接请求,一旦连接成功,打开会话;会话完成后,关闭Socket。客户端不需要指定打开的端口,通常临时的、动态的分配一个1024以上的端口。    {建立服务器} import java.net.*; import java.io.*; ...... . . . . . . . .
2024-04-16 16:43:26 38KB
1
在visual studio环境下开发。使用c#语言。程序中使用了线程,代理。实现了客户端和服务器的通信。只是个小例子。
2023-12-16 05:04:47 68KB socket
1
本人用C#做的一个UDP无连接通信工具.C#源代码,供学习!
2023-11-23 05:06:11 35KB SOCKET编程 C#源代码
1
C#写的Client/Server控制台程序,可定时批量上传JPEG文件到服务器程序,内含源码,VS2008及以上可直接打开,包含文件UTF-8格式读取(避免乱码),Soceck监听与通信等内容。
2023-11-16 05:05:05 57KB Socket编程 上传文件
1
在linux下的socket编程服务器模型之多路复用I/O,源码经过本人编译,测试,绝对能正确运行。
2023-06-26 14:13:08 2KB linux socket select
1
介绍socket编程的原理及方法 是网络编程的入门书籍
2023-06-03 22:56:49 295KB 计算机网络 socket编程
1
基于MFC的Socket编程
2023-03-28 15:35:34 176.65MB mfc c++ 开发语言
1
linux下的聊天程序
1
主要介绍了android开发socket编程之udp发送,实例分析了Android开发socket网络编程中udp发送的相关技巧,非常具有实用价值,需要的朋友可以参考下
2023-03-09 16:05:37 63KB android socket编程 udp发送
1
本资源包含客户端与服务端代码,以传输图片举例。包含Makefile文件,可直接编译,简单容易,适合新手!
2023-03-08 14:24:32 160KB socket编程 c++
1