毕业设计(论文)-基于Web的聊天室构建.doc_第1页
毕业设计(论文)-基于Web的聊天室构建.doc_第2页
毕业设计(论文)-基于Web的聊天室构建.doc_第3页
毕业设计(论文)-基于Web的聊天室构建.doc_第4页
毕业设计(论文)-基于Web的聊天室构建.doc_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

(本科毕业设计说明书本科毕业设计说明书 学校代码:学校代码: 1012810128 学学 号:号: 040201040201008008 题题 目目: 基基于于W We eb b 的的聊聊天天室室构构建建 学学生生姓姓名名 : 学学 院院 : 信信 息息 工工 程程 学学 院院 系系 别别: 计计 算算 机机 系系 专专 业业: 计计 算算 机机 科科 学学 与与 技技 术术 班班 级级: 内蒙古工业大学本科毕业设计说明书 摘 要 随着网络的发展与技术的不断成熟,越来越多出色的聊天软件冲击着聊天室的 发展,聊天室要想在夹缝中生存,必须有自己的特点。现在各大网站都把聊天室嵌 入到了网站中,但是目前还没有一个专门的聊天室的网站,所以这是一个聊天室发 展的突破口。 针对聊天室的特点,即时通讯和没有繁琐的注册过程以及操作的方便性,因此 特地开发了本系统。本系统是典型的基于 WEB 的应用,因为客户端就是浏览器,客 户只需要有浏览器就可以聊天。其开发过程主要是服务器端的开发,包括:底层数 据的建立,中间业务逻辑的处理和前端数据的显示。本系统根据对相关技术的分析 对比,系统实现采用 Struts 和 Ajax 等技术,底层数据库使用 Oracle,数据库连接 使用 JDBC。系统的主要功能有:用户的管理,包括用户登录,用户注册;房间的管 理,包括房间的曾删改查操作;用户聊天,包括公聊和私聊,发送表情,屏蔽讲话, 返回最近的聊天记录等功能。 关键词:聊天室;基于 web 应用;即时通信; 全套设计加扣 3012250582 内蒙古工业大学本科毕业设计说明书 Abstract With the development of network and technology , more and more outstanding chatting software impact on the development of chatting rooms.In order to survive in the cracks, chatting rooms must have their own characteristics. Now the major sites have embedded chatting rooms in regard to However there is no a special chatting rooms site, so this is a breakthrough in the development of chatting rooms. Considering the characteristics of chatting rooms, This system tries to communicate instantly, require no complex registration and operate conveniently. It is a typical WEB- based applications, because the client is the browser, a browser who can chat. Its development process is mainly server-side development, including: the establishment of the underlying data,the dealing with the middle business logic and showing the data.Based on comparison and analysis of relevant techniques, the system uses technologies such as Struts and Ajax,Oracle as the underlying database, JDBC as the database connection. The main features of the system are: the management of users, including user login,user registration.; Room management, including the room adding, deleting, searching;userchatting, including public and private chatting, sending expressions, shielding speech,returning to the record. Keywords: chatting rooms; Web-based application; Instant Message 内蒙古工业大学本科毕业设计说明书 目 录 引 言.2 第一章 系统使用的技术概述.2 1.1 JSP 的概述.2 1.2 STRUTS 的概述.2 1.2.1 视图.3 1.2.2 模型.3 1.2.3 控制器.3 1.3 AJAX 的概述.4 1.4 JDBC 的概述.5 1.4.1 JDBC 驱动程序的类型.6 1.4.2 Connection 对象.6 1.4.3 Statement 对象.6 1.4.4 ResultSet 对象 .7 第二章 聊天室的需求分析.8 2.1 需求分析.8 2.2 总体设计思想.8 2.3 系统功能描述.8 2.3.1 前台功能.8 2.3.2 聊天室的后台.9 2.4 系统的用例图.9 2.5 性能需求.10 第三章 聊天室系统详细设计.11 3.1 数据库设计.11 内蒙古工业大学本科毕业设计说明书 3.2 数据库的需求分析.11 3.3 软件硬件接口.14 3.4 系统流程图.14 3.5 软接结构.16 第四章 聊天室系统的实现.17 4.1 房间列表的实现.17 4.2 录页面的实现.17 4.3 CHAT页面的实现.19 4.4 管理员登录界面的实现.21 4.5 后台管理也页面的实现.22 第五章 测试与运行.25 .1 软件测试的目的和原则.25 .1.1 测试环境.26 .1.2 测试结果.26 .2 软件的运行与安装.27 .2.1 应用程序的构建、部署.27 .2.2 系统运行过程.27 .3 运行和维护.27 结 论.29 参考文献.30 谢 辞.31 内蒙古工业大学本科毕业设计说明书 引 言 随着互联网逐步普及,人们的生活和工作也越来越离不开信息网络的支持, 而 聊天室是人们最常见,最直接的网上交流方式。在网络中,人们不需要知道对方真实 的姓名,年龄,只要是在同一个软件或者同一个聊天室里,大家都可以放下身心的包 袱,无拘无束的交友、抒发自己的感想来缓减压力。不会因为一些不合理的原因,限 制住自己的语言。可以这么说,网络带动了信息的交流,而聊天带来了人们更多的朋 友和伙伴。 人们在生活、学习、工作中难免会遇到各种各样的问题,比如生活中的不 愉快、学习上的困惑、工作中的不顺利都会使人们的心情变得很糟糕,当人们无法解 决这些困惑时,就需要找个人来聊天释放心中的不愉快。那么聊天室就是一个不错的 选择,在这聊天室里尽管说出自己心中的困惑,因为这里是无拘无束的。聊天系统以 聊天交流为主,为广大用户提供一个借助网络进行人际交往的平台,也是网络与现实 最贴近的实用型网站。本文所介绍的聊天系统是基于 web 开发设计的,其主要特性是 能动态、实时的完成信息的传递,其运行所需环境及其工作流程将在本文依次介绍, 并且文中提供了部分程序源代码。 根据当前网络的需求,网络聊天越来越受到各种网民的青睐。因此开发网络聊 天是相当有必要,而且在网站内增加聊天功能,它不仅可以提高网站的访问量,同 时还可以留住访客,更重要的是让访客通过聊天室进行实时的互相交流。当前的聊 天室都是嵌在一些大型的网站中,比如,新浪、搜狐网站把聊天室嵌入到当中。就 针对人们在生活、学习、工作中遇到的问题,这些网站就没有设立一个供人们讨论 解决问题的聊天室。所以本文介绍的聊天室系统就针对这一问题提供了一个很好的 交流平台,具有很好的现实意义和实用价值。 内蒙古工业大学本科毕业设计说明书 2 第一章第一章 系统使用的技术概述系统使用的技术概述 1.1 JSP 的概述 JSP 技术提供了一种简单快速的方法来创建显示动态生成内容的 Web 页面。也 就是在 MVC 中充当 V(View)的角色。由业界处于领先地位的 Sun 公司制定了相 关的 JSP 技术规范,该规范定义了如何在服务器和 JSP 页面间进行交互,还描述了 页面的格式和语法。 JSP 页面使用 XML 标签和 scriptlets(一种使用 Java 语言编写的脚本代码) ,封 装了生成页面内容的逻辑。它将各种格式的标签(HTML 或者 XML)直接传递回响 应页面。通过这种方式,JSP 页面实现了页面逻辑与其设计和显示的分离。 JSP 技术是 Java 系列技术的一部分。JSP 页面被编译成 servlet,并调用 JavaBeans 组件(beans)或 Enterprise JavaBeans 组件(企业 beans) ,以便在服务器端处 理。因此,JSP 技术在构建可升级的基于 web 的应用程序时扮演了重要角色。 JSP 技术是行业协作的结果,它的设计是开放的,符合行业标准的,并支持绝 大多数的服务器、浏览器和相关工具。由于使用可重用的组件和标签取代了对页面 本身脚本语言的严重依赖,JSP 技术大大加快了开发的速度。所有 JSP 的实现均支 持以 Java 编程语言为基础的脚本语言,它有与生俱来的可适应性,支持复杂的操作。 针对本聊天室也是使用了 JSP 技术,没有 JSP 的支持那么在显示层就无法显示 数据,即使系统做的再好那也无济于事。 1.2 STRUTS 的概述 当建筑师开始一个建筑项目时,首先要设计该建筑的框架结构,有了这份蓝图, 接下来的实际建筑过程才会有条不紊,井然有序。同样,软件件开发者开始一个软 件项目时,首先也应该构思该软件应用的框架,规划软件模块,并定义这些模块之 间的接口和关系。框架可以提高软件开发的速度和效率,并且使软件更便于维护。 内蒙古工业大学本科毕业设计说明书 3 对于开发 web 应用,要从头设计并开发一个可靠,稳定的框架并不是一件容 易的事。幸运的是,随着 Web 开发技术的日趋成熟,在 Web 开发领域出现了一些 现成的优秀的框架,开发者可以直接使用他们,Struts 就是一种不错的选择,他是基 于 MVC 的 Web 应用框架。 Struts 实质上就是在 JSP Model2 的基础上实现的一个 MVC 框架。在 Struts 框 架中,模型由实现业务逻辑的 javaBean 或者 EJB 组件构成,控制器 ActionServlet 和 Action 来实现,视图由一组 JSP 文件构成。 1.2.1 视图 视图就是一组 JSP 文件,在这些 JSP 文件中没有业务逻辑,也没有模型信息, 只有标签,这些标签可以是标准的 JSP 标签或客户化标签,如 Sturts 标签库的标签。 此外,通常把 Struts 框架中的 ActionForm Bean 的也划分到视图模块中。 ActionForm Bean 也是一种 javaBean,除了具有一些 javaBean 的常规方法,还包含 一些特殊的方法,用于验证 HTML 表单数据以及将其属性重新设置为默认值。Struts 框架把用户输入的表单数据保存在 ActionForm Bean 中,把它传递给控制器,控制 器可以对 ActionForm Bean 中的数据进行修改,JSP 文件使用 Struts 标签读取修改 后的 ActionForm Bean 的信息,重新设置 HTML 表单。 1.2.2 模型 模型表示应用程序的状态和业务逻辑。对于大型应用,业务逻辑通常由 javaBean 或者 EJB 组件来实现。 1.2.3 控制器 控制器由 ActionServlet 类和 Action 类来实现。ActionServlet 类是 Struts 框架中 的核心组件。ActionServlet 继承了 javax.servlet.http.HttpServlet 类,它在 MVC 模型 中扮演中央控制器的角色。ActionServlet 主要负责接受 HTTP 请求信息,根据配置 文件 strut-config.xml 的配置信息,把请求转发给适当的 Action 对象,如果该 Action 对象不存在,ActionServlet 会先创建这个 Action 对象。 Action 类负责调用模型的方法,更新模型的状态,并帮助控制应用程序的流程。 对于小型简单的应用,Action 充当用户请求和业务逻辑处理之间的适配器(Adaptor), 其功能就是将请求与业务逻辑分开,Action 根据用户请求调用相关的业务逻辑组件。 业务逻辑由 java Bean 或者 EJB 来完成,Action 类侧重于控制应用程序的流程,而 不是实现应用程序的逻辑。通过将业逻辑放在单独的 java 包或 EJB 中,可以提高程 序的灵活性和可充用性。 内蒙古工业大学本科毕业设计说明书 4 当 actionServlet 控制器收到用户请求后,把请求转发到一个 Action 实例。如果 这个实例不存在,控制器会首先创建它,然后调用这个 Action 实例的 execute()方法。 Action 的 execute()方法返回 ActionForward 对象,它封装了把用户请求在转发给其他 Web 组件的信息。用户定义自己的 Action 类。即 Action 基类的子类时,必须覆盖 execute()方法。在 Action 基类中该方法返回 null。 图 1-1 MVC 模型图 MVC 模式的出现不仅实现了功能模块和显示模块的分离,同时它还提高了应用 系统的可维护性、可扩展性、可移植性和组件的可复用性。早期的程序中,如果不 注意模块与模块之间的耦合性,常常会增加程序的复杂性以及难以维护性。尽管 MVC 设计模式很早就提出,但在 Web 项目的开发中引入 MVC 却是步履维艰。主要原 因:一是在早期的 Web 项目的开发中,程序语言和 HTML 的分离一直难以实现。CGI 程序以字符串输出的形式动态地生成 HTML 内容。后来随着脚本语言的出现,前面的 方式又被倒了过来,改成将脚本语言书写的程序嵌入在 HTML 内容中。这两种方式有 一个相同的不足之处即它们总是无法将程序语言和 HTML 分离。二是脚本语言的功能 相对较弱,缺乏支持 MVC 设计模式的一些必要的技术基础。直到基于 J2EE 的 JSP Model 2 问世时才得以改观。它用 JSP 技术实现视图的功能,用 Servlet 技术实现 控制器的功能,用 JavaBean 技术实现模型的功能 。 1.3 AJAX 的概述 Ajax 技术就是所谓的 Web 2.0 技术的重要组成部分,Ajax 技术既是对传统 Web 技术的革命,也是对传统 Web 技术的一种改良和发展。引入 Ajax 技术后,不仅改进 了 Web 应用的性能,也改善了用户的体验。下面就从几个方面谈谈传统 Web 应用与 Ajax 之间的不同。 内蒙古工业大学本科毕业设计说明书 5 用户体验方面:这是 Ajax 技术最大的改善之处,对于传统的 Web 应用,用户只 能发送独占式请求,一旦请求发送出去,页面就处于等待状态,等待服务器响应完 成,在服务器响应完成之前,客户端的浏览器只能是一片空白;而 Ajax 技术则完全 不同,它允许采用异步的方法发送请求,请求的发送完全不会阻塞当前的浏览器线 程,浏览器可以继续下一步操作,例如继续浏览,甚至再次发送异步请求。对于用 户的体验而言,Ajax 提供了一种重大的改善,它让用户不会处于等待状态,用户会 感觉自己一直与应用处于交互状态。 响应速度:就响应速度而言,一般人会认为 Ajax 应用的速度比传统 Web 应用要 快,实际上这种说法并不完全正确。正如前面见到的,基于 Ajax 的应用需要大量增 加 JavaScript 代码,大量增加 JavaScript 代码后的 Web 页面在第一次加载时速度 将比传统 Web 页还慢(因为必须下载大量的 JavaScript 代码)。一旦进入该页后, 响应速度便会明显提高,因为无须频繁地在各页面之间跳转,从服务器获得的仅是 必须改变的数据,因此减少了冗余数据的下载,从而大幅度提高响应速度。有的人 说,Ajax 包含的大量 JavaScript 代码会占用用户的大量带宽,这是相当错误的说 法,Ajax 应用让页面一次下载,但可以多次重复使用。表面上看,一次下载的 JavaScript 代码量虽然增大,但从长时间来看,传统 Web 应用需要多次下载 Web 页 面,需要的带宽更大。 应用架构:传统 Web 应用主要由 3 层组成,而增加 Ajax 技术的 Web 应用将在传 统的 Web 应用上额外增加一个 Ajax 引擎,其实质就是一层 JavaScript 代码。 开发的代码量:Ajax 技术的大部分功能都依赖于 JavaScript 语言实现,大量 的 JavaScript 代码严重降低了程序员的开发速度。 服务器的负担:大量使用 Ajax 技术的 Web 应用将导致服务器的负担大大加重, 因为 Ajax 技术往往比传统 Web 应用需要发送更多的请求。 Ajax 技术是一种非常优秀的技术,但应该理性对待,绝不能在整个应用中盲目 增加大量的 Ajax 交互。 1.4 JDBC 的概述 JDBC 是 Sun 提供的一套数据库编程接口 API 函数,由 Java 语言编写的类、 界面组成。用 JDBC 写的程序能够自动地将 SQL 语句传送给相应的数据库管理系统。 不但如此,使用 Java 编写的应用程序可以在任何支持 Java 的平台上运行,不必在 不同的平台上编写不同的应用。Java 和 JDBC 的结合可以让开发人员在开发数据库 应用程序时真正实现“WriteOnce,RunEverywhere!” 内蒙古工业大学本科毕业设计说明书 6 1.4.1 JDBC 驱动程序的类型 () JDBC-ODBC 桥加 ODBC 驱动程序:JavaSoft 桥产品利用 ODBC 驱动程 序提供 JDBC 访问。注意,必须将 ODBC 二进制代码加载到使用该驱动程序的每个 客户机上。 () 本地 API - 部份用 Java 来编写的驱动程序: 这种类型的驱动程序把 客户机 API 上的 JDBC 调用转换为 Oracle、Sybase、Informix、DB2 或其它 DBMS 的调用。注意,象桥驱动程序一样,这种类型的驱动程序要求将某些二进制代码加 载到每台客户机。 () JDBC 网络纯 Java 驱动程序:这种驱动程序将 JDBC 转换为与 DBMS 无关的网络协议,之后这种协议又被某个服务器转换为一种 DBMS 协议。这种网络 服务器中间件能够将它的纯 Java 客户机连接到多种不同的数据库上。所用的具体 协议取决于提供者。 () 本地协议纯 Java 驱动程序:这种类型的驱动程序将 JDBC 调用直接转 换为 DBMS 所使用的网络协议。这将允许从客户机机器上直接调用 DBMS 服务器, 是 Intranet 访问的一个很实用的解决方法。 1.4.2 Connection 对象 Connection 对象代表与数据库的连接。连接过程包括所执行的 SQL 语句和在 该连接上所返回的结果。一个应用程序可与单个数据库有一个或多个连接,或者可 与许多数据库有连接。打开连接与数据库建立连接的标准方法是调用 DriverManager.getConnection 方法。该方法接受含有某个 URL 的字符串。 DriverManager 类(即所谓的 JDBC 管理层)将尝试找到可与那个 URL 所代表的数 据库进行连接的驱动程序。DriverManager 类存有已注册的 Driver 类的清单。当 调用方法 getConnection 时,它将检查清单中的每个驱动程序,直到找到可与 URL 中指定的数据库进行连接的驱动程序为止。Driver 的方法 connect 使用这个 URL 来建立实际的连接。 1.4.3 Statement 对象 Statement 对象用于将 SQL 语句发送到数据库中。实际上有三种 Statement 对象,它们都作为在给定连接上执行 SQL 语句的包容器: Statement、PreparedStatement 和 CallableStatement。它们都专用于发送特定类 型的 SQL 语句: Statement 对象用于执行不带参数的简单 SQL 语句; PreparedStatement 对象用于执行带或不带 IN 参数的预编译 SQL 语句; 内蒙古工业大学本科毕业设计说明书 7 CallableStatement 对象用于执行对数据库已存储过程的调用。Statement 接口提 供了执行语句和获取结果的基本方法。PreparedStatement 接口添加了处理 IN 参 数的方法;而 CallableStatement 添加了处理 OUT 参数的方法。 1.4.4 ResultSet 对象 ResultSet 包含符合 SQL 语句中条件的所有行,并且它通过一套 get 方法 (这些 get 方法可以访问当前行中的不同列)提供了对这些行中数据的访问。 内蒙古工业大学本科毕业设计说明书 8 第第二二章章 聊天室聊天室的需求分析的需求分析 2.1 需求分析 “基于 web 的聊天室”是一种基于 B/S 即 Browser/Server(浏览器/服务器)的结 构模式,它是对 C/S 结构的一种变化或者改进的结构。在这种结构下,用户界面完 全通过 WWW 浏览器实现,一部分事务逻辑在前端实现,但是主要事务逻辑在服务器 端实现。B/S 结构,主要是利用了不断成熟的 WWW 浏览器技术,结合浏览器的多种 Script 语言(JavaScript)和 Ajax 技术,用通用浏览器就实现了原来需要复杂专用 软件才能实现的强大功能,并节约了开发成本,是一种全新的软件系统构造技术。 随着各种操作系统将浏览器技术植入操作系统内部,这种结构更成为当今应用软件 的首选体系结构。显然 B/S 结构应用程序相对于传统的 C/S 结构应用程序将是巨大 的进步。针对本聊天室所采用的 B/S 结构模式,给用户带来了很大方便。用户不再 需要像基于 C/S 模式开发出的软件,需要把客户端程序安装在本机上才可以使用。 而本聊天室只需要用户的电脑上安装有浏览器就可以聊天,实际上每台电脑上都有 浏览器,这样用户可以走到哪聊到哪,大大的方便了用户。 2.2 总体设计思想 该聊天室的设计主要采用 Ajax 的设计思想,主要是异步通信。就该系统使用 的技术就是 IT 行业比较流行的技术,如:Struts,Ajax,Jdbc,Oracle 等,这些技术 都是根植于 Java 的,有很好的平台移植性。在这当中会用到一些架构,比如开源的 Struts 等,服务器采用 Tomcat5 比较好用。当然其它技术也是可以做聊天室的。从 管理者考虑,该系统提供聊天室前台和后台,从功能上考虑聊天室必定要有房间, 所以聊天室的前台要有房间分类和不同分类下的不同房间和用户注册登录聊天室的 功能。在聊天室的主界面上设置的功能有:公聊和私聊、发送表情、字体颜色、屏 蔽和解蔽讲话,在线列表,管理员(踢人)以及返回最近的聊天记录。在聊天室的后 台,要提供的功能有房间分类的添加与删除,房间的添加与删除以及编辑功能,还 有对注册用户的编辑和删除以及修改权限的功能. 2.3 系统功能描述 2.3.1 前台功能 () 房间分类与选择房间:从聊天室的特点上考虑,聊天室必定有房间,所 以设计了房间分类,和该分类下的不同房间。 ()注册登录:用户只有先选择某一个房间分类下的一个房间才可以转到登 内蒙古工业大学本科毕业设计说明书 9 录界面,然后登录进行聊天。 () 用户聊天:用户可以选择公聊还是私聊。当选择公聊时,用户可以直接 在输入框中输入要说话的内容,这时所有的用户都能看到你的聊天内容。当选择私 聊时,用户先选择要私聊的对象,然后在选中“悄悄话”这一选项就可以聊天了, 聊天内容其他人是不会看到的。用户还可选择各种字体颜色以及各种表情。用户还 可以屏蔽某人讲话,当用户不想看到某人的讲话是可以先选择该人,然后在点击 “屏蔽”,该人的讲话就不再显示。当点击“解屏”时该人的讲话又可以显示。用 户还可以查看最近的聊天记录,为了防止用户刷屏是不允许用户发送同一句话的。 如果以管理员身份登录聊天时,管理员可以把某人请出房间。 2.3.2 聊天室的后台 在后台只有一个管理员,对聊天室和用户进行管理。 () 聊天室的管理:管理员可以添加房间类别和删除房间类别的名称,以及 添加该房间类别下的房间,房间信息有:房间名称,房间介绍,房间的最大人数, 当然还可以修改和删除房间信息。 () 用户的管理:管理员还可以对用户进行修改和删除,把用户的权限修改 为管理员时,用户就变成了管理员可以对聊天室和用户进行管理。之后登录聊天室 就可以把某人请出房间了。 2.4 系统的用例图 本系统包括三个用例:分别是用户的注册与登陆,用户聊天,后台管理。下面 这三张图分别对应这三个用例的用例图。 选择房间 用户注册 用户登录 图 2-1 用户登录用例图 内蒙古工业大学本科毕业设计说明书 10 公聊 私聊 屏蔽讲话 查看聊天记 录 离开 图 2-2 用户聊天的用例图 添加类别 删除类别 查看房间 编辑房间 添加房间 修改拥护信 息 图 2-3 后台管理用例图 2.5 性能需求 ()系统要有良好移植性,不受操作系统的限制。 ()系统要有良好的可维护行,编写代码要规范。 ()系统要有一定的健壮性。 ()系统运行必须稳定,尽量少占用内存资源。 ()运行环境 操作系统:SUSE Linux 10 操作系统,1G 内存。 数据库:Oracle 9i 数据库。 服务器:Tomcat 5.0.28 内蒙古工业大学本科毕业设计说明书 11 第第三三章章 聊天室聊天室系统详细系统详细设计设计 3.1 数据库设计 数据库设计就是设计程序所需数据的类型、格式、长度和组织方式。因为数据 库应用系统主要是处理大量的数据,所以数据库设计的优劣,直接影响整个数据库 应用系统的性能和执行速率。 根据本系统的功能需求分析,本系统的数据库可包括三个表,分别是房间分类 表(classify_info),房间表(room_info),用户表(user_room). 房间分类表:房间分类 ID,房间分类名称两个字段。 房间信息表:房间 ID,房间分类,房间名称,房间介绍,房间最大人数五个字 段。 用户表:用户 ID,用户名,用户密码,用户权限(1:代表管理员,0: 代表用 户)。 3.2 数据库的需求分析 根据本聊天室的特点,只有房间和用户关系,所以设计的表不多,只有三张表。 内蒙古工业大学本科毕业设计说明书 12 表 3-1 数据字典表 NO名称定义描述位置 D1用户信息表userid+name+pass+type记录注册用户的基本信息DB D2房间信息表roomid+classify+name+introduction +maxuser 记录房间信息DB D3房间分类表classify+name记录房间分类名DB D4useridauto_increment唯一标识用户DB D5Namevarchar(16)用户名字DB D6Passvarchar(12)用户密码DB D7Typeint(2)区分普通用户于 管理员 DB D8roomidauto_increment唯一标识房间DB D9classifyvarchar(20)房间分类名 D10Namevarchar(16)房间名字DB D11introduction varchar(100)房间介绍DB D12maxuserint(3)房间最大人数DB D13classifyidauto_increment唯一表示房间分类DB D14Namevarchar(12)房间分类名DB 内蒙古工业大学本科毕业设计说明书 13 ()数据库输入项目表 表 3-2 数据库输入项目表 ()输出项目 )聊天室前台 选择房间:在聊天界面可以显示房间名称 游客登录:在聊天界面可以显示游客登陆的名称 用户注册登录:在聊天界面可以显示用户登录的名称 管理员入口:进入后台的通道 数据项条目(D1D16) 1、用户表(user_info) 位序名称与标识频度类型与有效范围输入媒体安全性 D1 编号(userid)低Int(自动)系统无 D2 名字(name)低 Varchar(16) 键盘无 D3 密码(pass)低 Varchar(12) 键盘无 D4 添加时间(type)低 Int(2) 键盘无 2、房间表(room_info) D7 房间编号(roomid)中Int(自动)系统无 D8 房间分类 (classify) 中 Varchar(16) 键盘无 D9 房间名称(name)中 Varchar(50) 键盘无 D10 房间介绍 (introduction) 中 Varchar(100) 键盘无 D11 房间最大人数 (maxuser) 中 Int(2) 键盘无 3、房间分类表(classify_info) D15 房间分类编号 (classifyid) 低Int(自动)系统无 D16 房间分类名(name)低 Char(12) 键盘无 内蒙古工业大学本科毕业设计说明书 14 )聊天室后台 .聊天室的管理 添加类别:由管理员添加房间的类别。 删除类别:由管理员把房间的类别删除。 添加房间:由管理员添加一些房间的信息。 查看房间:管理员可以对房间进行增删改查。 b.用户管理 查看会员:管理员可以对会员进行编辑和删除。 3.3 软件硬件接口 () 硬件接口 除服务器、客户端硬件设备的支持外,最重要的是需要连接到互联网、局域网 等相关网络的支持,此外还要确保机器的常用端口(如 8080)的连通。 ()软件接口 本系统数据库信息大部分是来自手动输入。 用户数据库接口:用于用户在登录聊天时使用; 管理员数据库接口:用于管理房间和用户使用; 3.4 系统流程图 系统的流程图 内蒙古工业大学本科毕业设计说明书 15 是否选择房间 是否登录 进入聊天界面 游客名字是否 存在 用户名是否正 确 开始 发送信息 选择字体颜色、表 情、屏蔽某人等功 能 是否为注册用 户 用户注册成功 注册失败 选择聊天对象 查看聊天记录 是 是 是 是 是 否 否 退出 是 否 退出否 游客登录注册用户登录 否 否 图 3-1 系统流程图 内蒙古工业大学本科毕业设计说明书 16 3.5 软接结构 ()聊天室前台功能图 聊天室前台 tai 台 选 择 房 间 用 户 注 册 用 户 登 录 聊 天 界 面 图 3-2 聊天室前台功能图 ()聊天室后台功能图 聊天室后台 选 择 房 间 用 户 注 册 用 户 登 录 聊 天 界 面 选 择 房 间 选 择 房 间 选 择 房 间 图 3-3 聊天室后台功能图 内蒙古工业大学本科毕业设计说明书 17 第四章第四章 聊天室系统的实现聊天室系统的实现 4 4.1 房间列表的实现 用户首先进入系统,来到房间列表的页面,在这里用户首先要选择房间才能 进入登录界面。在这个页面上能看到的信息有:房间分类名称和该房间分类下的所 有房间,以及当前房间里有多少人。 图 4-1 聊天室房间列表图 4.2 录页面的实现 用户根据用户名和密码进行登录聊天,系统会判断用户名是否正确,若正确则 进行下一步的操作,否则重新输。如果用户没有注册,那么用户要进入注册页面进 行注册。注册时会检查用户名有没有已经被使用,如果使用会提示“用户名已被注 册”。密码不能少于位,若少于位会提示“密码不能少于位”. 当用户进入登录页面时,如果没有注册过的用户,需要进行注册才能聊天。 内蒙古工业大学本科毕业设计说明书 18 图 4-2 注册页面图 用户注册成功时,跳转到显示成功的页面图。 图 4-3 注册成功后的跳转页面 当用户点击某一个房间时,会跳转到登录页面,如果没有注册返回到图。 内蒙古工业大学本科毕业设计说明书 19 4-2 进行注册,如

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论