欢迎来到天天文库
浏览记录
ID:50088173
大小:246.00 KB
页数:34页
时间:2020-03-04
《Java面向对象程序设计与应用开发教程第2讲.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、1网络编程-聊天室的设计与开发2第2讲网络编程客户机和服务器基于Socket的网络编程基于UDP协议的Socket通信网络运行机制Java用于网络操作的功能包是java.net,它包含多个访问各种标准网络协议的类包。Java的网络访问类包分别支持以下三个层次的网络运行机制。1)使用URL访问网络资源Java支持URL访问网络资源的机制,通过URL标识,可以直接使用http、file、ftp等多种协议,获取远程计算机上的资源,方便快捷地开发Internet应用程序。2)SocketSocket是建立在稳定连接基础上的以流传输数据的通信方式。它是目前实现客户-服务器模式应用程序的主要手
2、段。Java提供了对应于Socket机制的一组类能按照用户约定的通信协议实现网络通信。这种方式适合开发特定功能的网络通信程序。网络运行机制3)Datagram在网络实际发展中,有时需要采用面向非连接的、以数据报方式工作的通信方式,即在不建立连接的情况下进行数据的传输,这适用于网络不可靠环境下的数据传输和访问。这种方式称为Datagram。网络运行机制6客户机/服务器(Client/Server)模式,简称C/S模式,采用一种协同应用程序开发模型,是指由一个或多个客户机、一个或多个服务器以及操作系统和进程间的通信系统构成的一个复合系统。基于这种模式的一个应用程序被分为两个部分,分别运
3、行于网络中不同的计算机上,由此充分利用网络共享资源、通过协议提高工作效率。1.客户机与服务器7基本组成:客户机:一个面向最终用户的接口设备或应用程序,它通过从另一个设备或应用程序(服务器)请求信息,然后将信息交给用户。客户机在整个任务中主要负责与用户对话,将用户的需求传达给服务器,等服务器安装此请示提供相应的服务后,将服务结果返回给用户。1.客户机与服务器8服务器:服务器的硬件通常具有强大的信息处理能力,主要完成数据处理任务。服务器提供的典型功能有建立进程和网络服务地址,如监听客户的请求处理客户请求、将响应结果交给用户、释放与客户机的连接。通信系统:客户机与服务器之间的通信不仅需要
4、硬件连接,而更重要的是进行软件连接。软件连接是一种软件通信过程,如网络协议等;硬件连接主要用到网卡、网线等。1.客户机与服务器9C/S模式的特点:位置透明:服务器可以驻留在与客户机相同或不同的处理器上,需要时,客户机/服务器平台可通过重新定向服务来掩盖位置,服务器过程的物理位置对用户透明,反之也是这样。共享资源:一个服务器可以同时为多个客户服务,并能控制存取共享资源。1.客户机与服务器10服务封装:客户过程只需知道服务器界面,不必了解其逻辑。可扩展性:支持水平和垂直扩展,前者指可以增加或更改节点;后者指可以转移到新的服务器处理器上。1.客户机与服务器11Socket也叫套接字,用来
5、建立网络连接的一种通信方式。在Java中,利用Socket(插座)类可以很方便地进行网络编程。不需要知道你的电脑或对方的电脑是通过什么样的方式上网的,也不需要关心你们之间的距离,只要告诉Socket类你想和哪台电脑联系,其他的事Socket类自然会完成,从这个角度看,Socket类就像电源插座。2.基于TCP协议的Socket的网络编程12利用Socket类进行网络通讯时,首先要确定服务器和客户端。网络通讯是在两台电脑之间完成的,为了顺利建立连接,一般都采取一台电脑等候连接,而另一台电脑主动连接的方式。等待连接的电脑就叫做服务器,而主动连接的电脑叫做客户端。2.基于TCP协议的So
6、cket的网络编程13客户端向服务器发送请求连接的信号,服务器接收到信号后,向客户端返回连接成功的信号,之后在二者之间就建立了一个连接通道,通道是双向的,服务器和客户端都可以通过这条通道向对方发送消息,二者的地位是相等的。2.基于TCP协议的Socket的网络编程141、建立服务器端:建立服务器端对象,给出端口号,服务器端在这个端口等待客户端的连接调用accept函数监听端口,程序会停止在这里,一直等待客户端的连接当客户端连接到该端口之后,accept函数将建立一个Socket类,用于与客户端的通讯ServerSocket类会抛出IOException异常,必须用try...cat
7、ch结构捕获该异常建立服务器端的代码示例:try{serverSocket=newServerSocket(4444);SocketconnSocket=serverSocket.accept();}catch(IOExceptione){System.out.println("无法监听端口4444.");System.exit(-1);}2.基于TCP协议的Socket的网络编程-步骤1152.建立客户端的步骤:创建一个Socket对象,对象构造函数的两个参数分别为
此文档下载收益归作者所有