本文会从传统的BIO到NIO再到AIO自浅至深介绍,并附上完整的代码讲解。
1、BIO编程
1.1、传统的BIO编程
网络编程的基本模型是C/S模型,即两个进程间的通信。
服务端提供IP和监听端口,客户端通过连接操作想服务端监听的地址发起连接请求,通过三次握手连接,如果连接成功建立,双方就可以通过套接字进行通信。
传统的同步阻塞模型开发中,ServerSocket负责绑定IP地址,启动监听端口;Socket负责发起连接操作。连接成功后,双方通过输入和输出流进行同步阻塞式通信。...
分类:
编程语言 时间:
2016-05-29 06:26:56
阅读次数:
644
1,网络连接 (1)用户向服务器发送请求(Socket); (2)服务器向用户发送信息(ServerSocket),一直监听的话用.accept(); 2,信息发送与接收 (1)客户向服务器端发送信息:OutputStream os = ClientSocket.getOutputStream(); ...
分类:
编程语言 时间:
2016-05-27 23:15:58
阅读次数:
186
Socket通信是网络通信中最常用的技术之一,通过Socket建立的可靠连接,可以让多个终端与服务器保持通信,最典型的应用是建立一个多人聊天程序。本实例使用ServerSocket建立聊天服务器。将服务器端所有的通讯线程保存到一个集合当中,当有用户发来数据,则转发给所有用户,实现聊天室效果。Android端通过使用Socket建立客户端链接,并且在AsyncTask中执行网络读写的任务,将用户输入的内容发送到服务器,并接收服务器发来的数据,显示到界面上。开启多个虚拟机模拟多人聊天效果。...
分类:
移动开发 时间:
2016-05-27 11:35:03
阅读次数:
305
在客户/服务器通信模式中,服务器端需要创建监听特定端口的ServerSocket,ServerSocket负责接收客户连接请求。
构造ServerSocket
ServerSocket的构造方法有以下几种重载形式:
◆ServerSocket()throws IOException
◆ServerSocket(int port) throws IOException
◆Serve...
分类:
编程语言 时间:
2016-05-27 11:33:17
阅读次数:
187
3.1 构造ServerSocket ServerSocket的构造方法如下: 1 ServerSocket() 2 //Creates an unbound server socket. 3 4 ServerSocket(int port) 5 //Creates a server socket, ...
分类:
其他好文 时间:
2016-05-22 21:25:28
阅读次数:
226
简介
所谓socket 通常也称作"**套接字**",用于描述IP地址和端口,是一个通信链的句柄。应用程序通常**通过"套接字"向网络发出请求或者应答网络请求**。
以J2SDK-1.3为例,Socket和ServerSocket类库位于java.net包中。**ServerSocket用于服务器端,Socket是建立网络连接时使用的**。在连接成功时,应用程序两端都会产生一个Socket实例,操作这个实例,完成...
分类:
编程语言 时间:
2016-05-20 19:39:06
阅读次数:
248
本节讲点:客户端套接字:Socket:Socket的创建和使用方法,以及Socket选项和异常。服务端套接字:ServerSocket:SeverSocket的创建和使用方法,以及ServerSocket选项简单的Client/Server对话程序支持多客户端的Client/Server服务响应程序在学习JDK的网络编程之前先要了解一下..
分类:
编程语言 时间:
2016-05-20 17:40:38
阅读次数:
191
前面说了如何建立线程 现在我们来看下线程如何工作的 示例: private ServerSocket server; //保存所有客户端输出流的集合 private List<printwriter> allOut;public Server(){ //创建ServerSocket的同时学要申请服务 ...
分类:
编程语言 时间:
2016-05-19 01:27:16
阅读次数:
127
我们知道,要由容器来管理和运行servlet,但是为什么要这样呢?容器到底做了哪些工作? 1.通信支持 利用容器提供的方法,你能轻松地让servlet与web服务器对话,无需自己建立ServerSocket、监听接口、创建流等。容器知道自己与web服务器之间的协议,所以你的servlet不必担心we ...
分类:
其他好文 时间:
2016-05-14 16:52:47
阅读次数:
114
此代码是接收来自客户端请求结果集的编程.... 学习就是小进步吧.. ...
分类:
编程语言 时间:
2016-05-13 10:43:52
阅读次数:
118