基于java的师生在线答题系统的开发内容摘要:
请求,并对请求进行处理,将请求结果返回给客户机。 连接和无连接 网络中存在面向连接和无连接两种通信方式。 面向连接的通信方式要求通信双方(进程)必须先建立连接, 然后进行信息交互,通信结束后还须关闭连接。 该种通信方式可靠,适合大数据量传输(如因特网中的 TCP连接)。 无连接的通信方式不必先建立连接,而是直接进行通信,仅适合少量数据传输(如因特网中的 UDP 数据报)。 协议 协议是指计算机网络中计算机之间的通信标准,如因特网中采用TCP/IP 协议。 URL类 统一资源定位器 ( URL, Uniform Resource Locator) 用于标识万维网中文本名称、位置、以及访问协议。 URL 类封装了使用统一资源定位器 URL访问一个 WWW 上的资源的方法,这个类可 以生成一个寻址或指向某个资源的对象。 URL 类生产的对象指向 WWW 资源( Web 页、文本文件、图形文件、声频片段等),该 类封装在 包中,它提供许多访问远程站点信息的操作,大大降低了编程的复杂性。 在 Java 网络编程中, URL 层次,是最高级层次,利用 URL 可直接进行 Inter 上的资源访问和数据传输 格式: 其中: protocol 制定使用的协议,它可以是 、 ftp、 gopher、 news、 tel等。 8 主机名 hostname 指定 DNS 服务器能访问到 WWW 上的计算机名称如 端口号 port 是可选的,表示所联的端口,只在要覆盖协议的缺省端口是才有用,如果忽略端口号,将连接到协议缺省的端口,例如 协议的缺省端口为 80。 资源名 document 是主机上能访问的文件。 利用 URL 可以方便地获取文本和 图像。 文本数据源可以是网上或者本机上的任何文本文件,只要该文本文件的地址表示符合 URL 的标准位置表示法。 Socket 类 Socket 是著名的网络应用编程接口( API)之一 ,而 Java 语言是网络编程的主要语言,提供了强大和独特的网络通讯支持机制和能力。 在 Java 网络编程中, Socket 层次,即传统网络编程经常采用的方式,通过在Client/Server( 客户机 /服务器 ) 结构的应用程序之间建立 Sock et 套接字连接,然后在连接之上进行数据通信,是一种经常采用的通信模式。 套接字类型 Socket 根据其传输数据类型的不同 ,可以分为以 下 三 种 类 型 : 1 )字节流套接字( Socket stream) ,提供了一个 双向的、面向连接的、可靠的、无差错的字节流通信,无重复的发送且按发送顺序接收。 内设流量控制,避免数据流超限;不保持信息边界。 实现这种特性的通信协议在收到差错时将重传信息,若在连接已经切断后再发数据则返回错误信息, FTP 协议即采用流式套接字; 2) 数据报套接字 ( Socket Dgram);提供了一个无连接服务,每个数据包都有地址。 数据包以独立包形式被发送,但不保证顺序,不保证可靠或不重复。 网络文件系统 NFS 使用数据报式套接字。 3)原始数据套接字( Socket Raw),该接口允许对较低层次协议 , 如 IP、ICMP 直接访问。 这不是给普通用户使用的,而是给要开发新协议或对低层协力议有兴趣的人使用。 9 socket 类编程机制 随着计算机技术的发展,现在的操作系统多同时运行多个进程(或线程)。 Socket 机制成功的解决了两台主机不同进程之间的通信问题。 下图是一个典型的面向连接的 Socket 通信机制示意图。 它采用客户服务器模式 ,由服务器方先建立自己的半相关(建立 Socket 并将 Socket 联编到某个端口上),并进入监听状态,同时监听是否有与自己端口相对应的连接请求。 连接是客户方发送的。 客户 方在建立自己的半相关后,向服务器发起连接(调用方法 accept());这样就建立起来一个完整的连接。 服务器端 :主进程 1)创建一个 Socket,将其绑定到服务器本地址和一个已知协议端口上。 让该端口保持非连接状态。 2)将该端口设置为被动式。 3)主进程守候在这个指定的端口上 ,等待收接客户机的连接请求。 4)当有来自客户端的连接请求时,向客户机发送应答并创建一个新的从进程来处理响应。 返回 3), 5)退出。 从进程 : 1)由于接收到连接请求而被创建,即用于连接的 Socket。 2)根据用户的连接请求 ,决定利用该连接与客户机进行交互。 3)交互结束 ,关闭连接并退出。 客户机端 : 1)创建一个用于远程通信的 Socket。 2)发起一个到服务器进程的主动连接 . 3)利用该连接与服务器进程进行通信。 4)通信结束,关闭连接并退出。 流程图 21 所示。 10 服 务 器 客 户 机在 指 定 断 口 生 成S e r v e r S c o k e t 根 据 服 务 器 所 在 主 机的 I P 地 址 和 p o r t 生 成一 个 s o c k e t侦 听 客 户 端 请 求 连接请求 由 得 到 的 s o c k e t 实例 生 成 输 入 输 出流 有 s o c k e t 生 成输 入 输 出 流服 务 应 答 服务请求 向 客 户 发送 数 据 向 服 务 器 发 送 数据向 客 户 发 送数 据从 服 务 器 接受 请 求关 闭 S o c k e t 关 闭 S o c k e t图 21 Socket通信机示意图 3 系统概要设计 设计思路 使用计算机网络的主要目的之一是资源共享,多数情况下,这种资源共享是通过两个独立运行在不同计算机上的程序实现 :一个是服务器( Server)程序,提供资源和服务。 另一个是客户( Client)程序,使用服务器提供的资。基于java的师生在线答题系统的开发
相关推荐
e)。 } }//end get who add me as friend //处理上线结束 (Echo ing :+str)。 } (Close...)。 }catch(IOException e){}//捕或异常 finally {try{()。 } catch(IOException e){} } } } public class Server{//主服务器类 public static
, 到到 控控 制制 线线。 用用 LPC2124的的 个个 端端 口口 来来 控控 制制 键键 盘盘 进进 行行 扫扫 描描 , 来来 实实 现现 键键 盘盘 值值 的的 读读 取取 , 其其 中中 到到 送送 扫扫 描描 数数 据据 , 可可 以以 确确 定定 按按 下下 的的 键键 在在 矩矩 阵阵 键键 盘盘 中中 的的 行行 , 键键 盘盘 的的 值值 来来 确确 定定 按按 下下
接搜索引擎的新时代。 Lucene 简介 最初 Lucene 是 Apache 软件基金会 Jakarta 项目组 的 子项目,是一个完全开放源码的全文检索工具包。 Lucene的原作者是 Doug Cutting,他是一位资深全文检索专家, VTwin搜索引擎的主要开发者。 2020年 3月 Doug Cutting把 Lucene转移到 SourceFe上, 2020年 10月献给
图 后台登录界面 21 管理员通过用户名登陆后台以后,可以看到如下界面。 如图 所示: 图 后台登录欢迎界面 在该页面中,我们可以对界面里的功能选项进行增加修改,以此对网站信息进行维护。 如图 所示: 图 后台维护界面 1 与 此同时,单个选项也同样可以进行修改,添加,删除功能。 如图 所示: 22 图 后台维护界面 2 23 4 总结 本次设计历时两个多月,在此确实感触良深。
的功能特性。 B. : 移动信息设备描述提供了一种让 MIDlets持久性储存并在以后可以取回数据的机制。 C. : 这个 MIDlet包明确定义了 MIDP应用,也定义了和应用环境之间的交互。 D. : 移动信息设备还描述包括基于有限连接设备配置GenericConnection框架的网络支持。 基于 J2ME 的手机五子棋游戏的设计与实现 8 图 25 MIDlet生命周期流程图 开发平台
装载的类只能访问某些文件系统。 [16] 6 5. 多线程 线程是操作系统的一种新概念,它 又被称作轻量进程,是比传统进程更小的可并发执行的单位。 Java 在两方面支持多线程。 一方面, Java 环境本身就是多线程的。 若干个系统线程运行负责必要的无用单元回收,系统维护等系统级操作;另一方面, Java语言内置多线程控制,可以大大简化多线程应用程序开发。 Java 提供了一个类Thread