基于java技术的聊天工具毕业论文(设计)(编辑修改稿)内容摘要:
,成为了网络社交的新宠。 本文试图从传播学的角度来探讨移动互联网时代的这一热潮 ,介绍微信背景及发展环境 ,分析使用微信的用户群 ,概括微信的传播模式与特征并指出微信信息传播方式对社会带来的影响 [11]。 陌陌 20xx 年的中国资本市场 ,社交网络的资本故事无疑是讲得最好的。 以微信为代表的千亿美元估值预期 ,掀起了资本扎堆这一投资价值高地的热潮。 而最先将这种关注变现的 ,却是曾被诟病无数的 陌陌。 20xx 年 12 月 11 日 ,由网易前总编辑唐岩等创办的陌陌科技以 美元发行价格正式登陆纳斯达 克交易所 ,这意味着仅仅三年历史的陌陌成为最快上市的移动互联网公司之一 [12]。 FaceBook Facebook 是一个社交网络服务网站,于 20xx 年 2 月 4 日上线。 主要创始人为美国人马克 扎克伯格。 截至 20xx 年 5 月, Facebook 拥有约 9 亿用户,是全球第一大社交网站。 随着用户数量增加, Facebook 的目标已经指向另外一个领域:互联网搜索。 20xx年 2月 1 日,Facebook 正式向美国证券交易委员会( SEC)提出首次公开发行( IPO)申请,目标融资规模达 50 亿美元,并任命摩根士丹利、高盛和 摩根大通为主要承销商 [13]。 4 2 实现聊天工具的开发环境及工具 开发环境 及语言 概述 在整个系统的开发过程中, 选择什么样的开发工具和开发环境,将直接影响到系统的开发效率和系统 的质量。 结合系统开发的需要,本系统所需要的 开发环境如下: 操作系统: windows 7 系统开发工具: Eclipse 系统开发语言: Java 运行环境: Windows、 Linux 选择 Java 作为开发语言的 主要原因如下 [14]: ( 1) 平台无关性 平台无关性是指 Java 能运行于不 同的平台。 Java 引进虚拟机 原理,并运行于虚拟机,实现不同平台的 Java 接口之间。 使用 Java 编写的程序能在世界范围内共享。 Java 的数据类型与 机器无关, Java 虚拟机( Java Virtual Machine)是建立在硬件和操作系统之上,实现 Java 二进制代码的解释执行功能, 提供于不同平台的接口的。 ( 2) 安全性 Java 的编程类似 C++,学习过 C++的读者将很快掌握 Java 的精髓。 Java 舍弃了C++的指针对存储器地址的直接操作,程序运行时,内存由操作系统分配,这样可以避免病毒通过指针侵入系统。 Java 对程序提供了安全管理器,防止程序的非法访问 [15]。 ( 3) 面向对象 Java 吸取了 C++面向对象的概念,将数据封装于类中,利用类的优点,实现了程序的简洁性和便于维护性。 类的封装性、继承性等有关对象的特性,使程序代码只需一次编译,然后通过上述特性反复利用。 程序员只需把主要精力用在类和接口的设计和应用上。 Java 提供了众多的一般对象的类,通过继承即可使用父类的方法。 在 Java 中,类的继承关系是单一的非多重的,一个子类只有一个父类,子类的父类又有一个父类。 Java 提供的 Object 类及其子类的继承关系 如同一棵倒立的树形,根类为 Object 类, Object 类功能强大,经常会使用到它及其它派生的子类。 ( 4) 分布式 Java 建立在扩展 TCP/IP 网络平台上。 库函数提供了用 HTTP 和 FTP 协议传送和接受信息的方法。 这使得程序员使用网络上的文件和使用本机文件一样容易。 ( 5) 健壮性 Java 致力于检查程序在编译和运行时的错误。 类型检查帮助检查出许多开发早期出现的错误。 Java 自己操纵内存减少了内存出错的可能性。 Java 还实现了真数组,避免了覆盖数据的可能,这些功能特征大大提高了开发 Java 应用程序的周期。 并 且 Java 还提供了 Null 指针检测、数组边界检测、异常出口、 Byte code校验等功能。 5 开发工具 概述 目前 Java 开发工具有很多 , 每种开发工具都有自己的特点。 Eclipse 不单单是用于 Java语言的开发,还包括插件开发环,这个组件主要针对希望扩展 Eclipse 的软件开发人员。 Eclipse 是一个开放 源 的、基于 Java 的可扩展开发平台。 就其本身而言,它只是一个框架和一组服务, 这也是很多 Java 程序员喜欢使用 Eclipse 的主要原因。 Eclipse 的可视化集成开发环境包括文本编辑器、工程创建工具 、对象浏览器和调试器等。 用户可以在集成开发环境中创建工程和打开工程,建立、打开和编辑文件,并可以编译、运行和调试应用程序。 可以说在 Eclipse 集成开发环境 中开发 Java 程序,快速而且高效。 其主要特点如下 [16]: ( 1) 开放的可扩展的 IDE; ( 2) 成功的底层图形界面 API; ( 3) 强大的插件加载功能 ; ( 4) 可以通过导入一些 CVS 相关的插件来实现版本管理的便易性。 开发技术 概述 Java Socket 技术 在聊天工具的开发过程中选择 Java Socket 网络编程。 Socket 是网络上运行的两个程序间双向通讯的一端,它既可以接受请求,也可以发送请求,利用它可以较为方便的编写网络上数据的传递。 在 Java 中,有专门的 Socket 类来处理用户的请求和响应。 利用 Socket类的方法,就可以实现两台计算机之间的通讯。 在 Java 中 Socket 可以理解为客户端或者服务器端的一个非凡的对象,这个对象有两个要害的方法,一个是 getInputStream方法,另一个是 getOutputStream方法。 getInputStream方法可以得到一个输入流,客户端的 Socket 对象上的 getInputStream 方法得到的输入流其实就是从服务器端发回的数据流。 GetOutputStream 方法得到一个输出流,客户端 Socket对象上的 getOutputStream 方法返回的输出流就是将要发送到服务器端的数据流,(其实是一个缓冲区,暂时存储将要发送过去的数据 [17]。 TCP 和 UDP TCP 是 Tranfer Control Protocol 的 简称,是一种面向连接的保证可靠传输的协议。 通过 TCP 协议传输,得到的是一个顺序的无差错的数据流。 发送方和接收方的成对的两个Socket 之间 必须建 立连接,以便在 TCP 协议的基础上进行通信,当一个 Socket(通常都是server Socket)等待建立连接时,另一个 Socket 可以要求进行连接,一旦这两个 Socket连接起来,它们就可以进行双向数据传输,双方都可以进行发送 或接收操作 [18]。 UDP 是 User Datagram Protocol 的简称,是一种无连接的协议,每个数据报都是一个独立的信息,包括完整的源地址或目的地址,它在网络上以任何可能的路径传往目的地,因此能否到达目的地,到达目的地的时间以及内容的正确性都是不能被保证 的 [19]。 客户端 /服务端( Cilent/Server) 结构 C/S 结构, 是 客户机和服务器结构 的简称。 它是软件系统体系结构,通过它可以充分利用两端硬件环境的优势,将任务合理分配到 Client 端和 Server 端来实现,降低了系统的通讯开销。 目前大多数应用软件系统都是 Client/Server 形式的两层结构,由于现在的软件应 6 用系统正在向分布式的 Web 应用发展, Web 和 Client/Server 应用都可以进行同样的业务处理,应用不同的模块共享逻辑组件;因此,内部的和外部的用户都可以访问新的和 现有的应用系统,通过现有应用系统中的逻辑可以扩展出新的应用系统。 这也就是目前应用系统的发展方向 [20]。 3 需求分析 互联网的快速发展使得越来越多人认识到网络聊天工具的重要性,如何做出一款好的网络聊天工具已经成为许多开发者最注重的问题。 为此 ,满足用户信息响速度快,以及让用户享受到网络即时消息的方便快捷成为聊天工具的关键。 功能需求 在人们的日常生活中聊天工具已经是形影不离的工具。 一个操作简单、界面明了 、运行顺畅的聊天工具 对一些小型局域网内的用户可以说带来了很多便利的 作用。 聊天工具就是一个可以让 人们交互身边发生的信息传输文件 , 也是方便人们远距离进行信息交流的工具。 每个人可以在其中获取自己想要的信息和知识。 随着互联网的不断发展 , 网络上出现各行各业的人,这样可以让不同职业的人之间的信息可以得到互换,不但是一种自我提高,也为社会中信息的发展提供了高效的运作。 此聊天工具 分为客户端(如图 31)和服务 端(如图 32)。 客户端 主要由注册界面、登录界面、聊天室界面、私聊界面、 传送文件 、功能设置界面等构成 ,充分体现了简单明了,快捷 ,使用简单 ,方便等特点。 图 31 客户端结构图 ( 1) 用户注册功能 用户填写系统给出的注册项目,并提交给系统,成功注册 后,系统生成用户所注册的用户名 ,并保存在字段当中。 ( 2) 用户登录功能 将用户名 和密码 填写上去 , 进入主界面之前服务器会验证用户名和密码。 客户端 登入 用户登入 用户注册 通信 公聊 私聊 功能设置 字体颜色 字体类型 字体大小 表 情 发送 发送留言 发送文件 7 图 32 服务器结构图 ( 3) 公聊功能 在聊天工具界面中选择信息发送所有人 , 在线所有用户可以看到你发送的信息。 ( 4) 私聊功能 从在线的用户中选择自己想要发送信息的用户选择私聊按钮发送信息。 ( 5) 发送留言和文件功能 用户在聊天过程中可以 向其他用户留言,或者可以给在线用户发送文件。 ( 6) 字体属性设置功能 可以让用户选择自己想要的字体和颜色。 ( 7) 用户退出功能 用户若想退出该系统,则可以点击退出按钮,使用户退出到聊天界面 性能 需求 ( 1) 实用性 为局域网聊天提供方便,有效的进行 管理。 ( 2) 操作简单 为保证不同类型的用户能够使用, 系统不应太复杂和烦琐,因此要求系统的操作尽可能简单易行。 ( 3) 适应性 系统 能在在不同的 环境下都能得以应用。 ( 4) 代码可读 性 文中的代码将尽可能简洁,易懂。 服务器 监听请求 显示登录情况 发送系统消息 8 4 系统 设计 系统总体功能概述 根据现代流行聊天工具的发展,并结合用户对聊天工具的需求,初步设定了几种功能。 本系统在实现之前经过查阅资料以及实践调研,对聊天工具 中存在的问题 进行了解,把 聊天工具需要实现的基本功能总结并归类,具体包含以下功能:用户注册、用户登录、公聊、私聊、发送留言和文件、字体属性设置 、 用户退出等功能。 ( 1) 用户注册功能 : 向服务端发送注册请求;服务端响应客户端,客户端弹出注册信息表单;用户填写完表单后将注册数据传给服务端处理,并保存在字段中; 返回客户端一个响应,显示用户注册的 用户名 ,提示注册成功。 若 用户填 写表单的数据格式不正确或表单中存在空缺的项,客户端给予提示信息; 用户注册的项 在已注册的用户名 中发生冲突,客户端提示注册不成功并提示已有用户注册 , 服务器 未启动或出现异常,则注册失败。 ( 2) 用户登录功能 : 请求连接 服务器, 发送登录信息; 查询 用户信息 的合法性同时服务。基于java技术的聊天工具毕业论文(设计)(编辑修改稿)
相关推荐
本章主要介绍离散数学题库管理软件中 整体设计和 后台数据库的结构设计。 数据库结构设计是继需求分析和确定开发工具后的重要阶段,是管理型软件开发设计的核心和重要组成部分。 数据库结构设计的好坏与否将对应用系统的运行效率以及实现的效果产生很大影响。 科学、合理的数据库结构设计可以提高数据访问的速度,有效保持数据的完整性、一致性和共享性,因此数据库结构设计对系统设计来说至关重要。 系统整体设计
......................................................33 游戏主菜单 ...........................................................................................35 个人资料模块 ...................................
统功能进行相应的功能设计。 本系统分为前台与后台两个方面,七个功能模块。 前台采用 JSP 技术,主要用于实现各个模块的添加、删除、修改和查询等操作;后台采用 SQL Server 数据库,主要实现对数据库 的管理与操作。 (1) 系统前台 前台展示区要求实现名片夹管理,信息库管理,收发短信,邮件群发,系统参数设定,系统设置和退出系统这些模块信息的显示功能和添加、删除、修改和查询等功能。 (2)
JB)是 J2EE 平台的核心,也是 J2EE 得到业界广泛关注和支持的主要原因。 众所周知 , J2EE 其中的 一个主要目标 ,使 企业级多层应用系统的开发 变得简单 , 而 业务逻辑的开发 才是 程序员 们专研的对象, EJB 它自身就是一种规范,正 是基于 此类 思 维 的服务器端技术, 一个可重用的组件框架 被其重新 定义了 , 以 实现分 站 式的、面向对象的业务逻辑。 EJB
.......................................................24 回帖 ..............................................................................................................26 数据流 .....................
库提供统一访问,它由一组用 Java 语言编 写的类和接口组成 [8]。 JDBC 提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序,同时, JDBC 也是个商标名。 有了 JDBC,向各种关系数据发送 SQL 语句就是一件很容易的事。 换言之,有了 JDBC API,就不必为访问 Sybase 数据库专门写一个程序,为访问 Oracle