ImageVerifierCode 换一换
格式:DOCX , 页数:48 ,大小:406.45KB ,
资源ID:10830565      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/10830565.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(即时聊天系统QQ项目研发与实现毕业设计论文.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

即时聊天系统QQ项目研发与实现毕业设计论文.docx

1、即时聊天系统QQ项目研发与实现毕业设计论文课题名称 即时聊天系统QQ项目研发与实现 摘要随着信息技术的飞速发展,人们在工作中对即时聊天,文件传输的使用和需求越来越多。现有的商用QQ和MSN等聊天软件娱乐性很强,源代码不明确,信息安全性无法保障,软件本身作为第三方软件不便管理。从技术层面上说单纯的即时聊天软件结构简单,功能模块不多,因此很多公司自行研发此类软件供内部使用。聊天工具作为计算机的应用之一,受到了用户的普遍爱好,它把人们带进了一个虚拟的网络世界,大大加深了人们之间的联系,从单一的文本 聊天,到语音聊天以及到现在的图像、视频聊天、即时短信的发送和在线游戏等功能的开发,已经大大的拓展了聊天

2、工具的概念,它将会作为未来人们通过因特网相互联系和娱乐的主要平台。我的毕业设计所开发的是基于Java+SQL Server 2005的即时聊天系统QQ项目研发与实现,这个工具有利于人们的信息交流。实现企业局域网通讯的目的就是使人们之间的信息交流更加省时、方便。这个工具可以使局域网内部人员实现聊天功能。它无需连入国际互联网,设计选用Eclipse开发环境和Microsoft SQL Server 2005数据库。本系统采用C/S(客户端和服务器)模式,该项目主要采用Socket对象来实现客户端和服务器端之间的通信。通过对聊天工具的开发,能了解计算机如何通过网络互相通信以及在此相互通信的基础上实现

3、的应用程序级的协议。关键词:即时聊天;局域网;客户端;服务器端;Socket对象AbstractWith the rapid development of information technology, people in the work of instant messaging, file transfer and demand more and more.Existing commercial QQ and MSN chat software, such as entertainment is very strong, the source code is not clear, info

4、rmation security cant guarantee, inconvenient management software itself as a third party software.From a technical level pure instant messaging software structure is simple, function modules, so many companies to develop such software is for internal use.Chat tools as one of the application of comp

5、uter, the users common interests, it bring people into a virtual world, greatly deepened the connections between people, from a single text chat, voice chat, and to present images, video chat, instant messaging, send and to the development of online games and so on, have greatly expanded the concept

6、 of chat tool, it will be the future people connect with each other through the Internet and entertainment the main platform.My graduation design development is based on Java + SQL Server 2005 QQ instant messaging system project development and implementation, this tool is helpful for peoples commun

7、ication.Achieve the purpose of the enterprise local area network (LAN) communication between people is to make the information communication more time-saving and convenient.This tool can make the internal staff realize the chat function.It need not connected to the Internet, the design is to choose

8、the Eclipse development environment and Microsoft SQL Server 2005 database.This system USES C/S (client and server) mode, the project mainly USES the Socket object to implement the communication between the client and server.Through the chat tool development, can understand the computer how to commu

9、nicate with each other through the network and to communicate with each other in the implementation on the basis of the application level protocol.Keywords: Instant messaging;Local area network (LAN);The client;The server side;The Socket object第1章 绪论1.1本课题的开发背景及意义随着信息技术的飞速发展,人们在工作中对即时聊天,文件传输的使用和需求越来

10、越多。现有的商用QQ和MSN等聊天软件娱乐性很强,源代码不明确,信息安全性无法保障,软件本身作为第三方软件不便管理。从技术层面上说单纯的即时聊天软件结构简单,功能模块不多,因此很多公司自行研发此类软件供内部使用。聊天工具作为计算机的应用之一,受到了用户的普遍爱好,它把人们带进了一个虚拟的网络世界,大大加深了人们之间的联系,从单一的文本 聊天,到语音聊天以及到现在的图像、视频聊天、即时短信的发送和在线游戏等功能的开发,已经大大的拓展了聊天工具的概念,它将会作为未来人们通过因特网相互联系和娱乐的主要平台。此次设计从实际工程应用的角度出发,以计算机网络原理为指导,结合当前网络中的一些常用技术,编程实

11、现基于java的网络聊天工具。本项目是作为本人本科的毕业设计课题提出来的,它规模适中,适合于个人开发,能够锻炼学习新知识能力,锻炼编程能力,锻炼软件工程思维方式。通过对聊天工具的开发,能了解计算机如何通过网络互相通信以及在此相互通信的基础上实现的应用程序级的协议。1.2课题研究内容本设计主要应用Java网络编程、C/S架构开发模式以及SQL Server 2005数据库连接等相关知识。需要熟练掌握C/S架构模式下的开发技术,将所学知识应用于实际的生活中,并且在实际生活中发挥其主要功能并获得效益。本设计内容包括以下功能模块。(1)QQ服务器端模块:主要包括服务器端启动、服务器连接数据库、服务器连

12、接客户端线程、服务器操作数据库等。(2)QQ客户端模块:主要包括QQ客户端登录验证、好友列表、聊天界面、用户好友在线提示、客户端连接服务器端线程等。1.3设计组织结构本毕业设计的主体主要分为六大部分。第一部分:即绪论部分,主要介绍了毕业设计(论文)的开发背景意义、研究内容、组织结构等内容。第二部分:开发工具及相关技术,主要介绍本毕业设计中所用的开发软件、运行环境,以及开发过程中所需要的结构体系等要素。第三部分:介绍整个系统的可行性分析以及功能需求等内容。第四部分:介绍数据库的基本数据表结构设计。第五部分:根据需求分析整个系统的构架并陈列主要功能模块。第六部分:详细讲解了各个功能模块的实现过程和

13、运行结果。第2章 开发工具及相关技术2.1常用开发工具2.1.1 Eclipse简介Eclipse 是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括Java开发工具(Java Development Kit,JDK)。虽然大多数用户很乐于将 Eclipse 当作 Java 集成开发环境(IDE)来使用,但Eclipse的目标却不仅限于此。Eclipse 还包括插件开发环境(Plug-in Development Environment,PDE),这个组件主要针对希望扩展

14、 Eclipse 的软件开发人员,因为它允许他们构建与 Eclipse 环境无缝集成的工具。由于 Eclipse 中的每样东西都是插件,对于给 Eclipse 提供插件,以及给用户提供一致和统一的集成开发环境而言,所有工具开发人员都具有同等的发挥场所。这种平等和一致性并不仅限于 Java 开发工具。尽管 Eclipse 是使用Java语言开发的,但它的用途并不限于 Java 语言;例如,支持诸如C/C+、COBOL、PHP等编程语言的插件已经可用,或预计将会推出。Eclipse 框架还可用来作为与软件开发无关的其他应用程序类型的基础,比如内容管理系统。基于 Eclipse 的应用程序的一个突出

15、例子是 IBM Rational Software Architect,它构成了 IBM Java 开发工具系列的基础。Eclipse开发工具界面如图2-1所示:图2-1 Eclipse开发工具界面2.2运行环境2.2.1 JDK简介Java Development Kit(JDK)是Sun公司专门为Java程序员开发的免费软件开发工具包(Software Development Kit,SDK)。自从Java语言问世以来,JDK成为应用最为广泛的软件开发工具包。此外,还可以使用Open JDK进行开发。对于程序开发人员,必须使用JDK进行开发调试。对于普通用户,仅需要安装JRE来运行Java

16、程序。在Oracle官方网站下载的JDK文件名如jdk-7u45-windows-i586。其中jdk表示JDK;7表示主版本号;u45表示该主版本号下的45个更新版本;windows表示JDK版本使用windows系统;i586表示处理器类型。JDK安装完成后文件夹结构如图2-2所示:图2-2 JDK安装完成后文件夹结构bin文件夹包含各种命令,例如javac命令可以将Java源代码编译成class文件;java命令可以运行class文件;jar命令可以将相关的类文件进行打包;javadoc命令用于从源代码中提取说明文档等。src压缩文件包含了Java SE API的源代码。2.2.2 Mi

17、crosoft SQL Server 2005数据库简介Microsoft SQL Server是一个关系型数据库管理系统。它最初是由Microsoft Sybase和Ashton-Tate公司共同开发的,于1988年推出了第一个QS/2版本,后期逐渐推出Microsoft SQL Server 2000、Microsoft SQL Server 2005等版本,目前较为流行的是Microsoft SQL Server 2005.Microsoft SQL Server 2005是一个全面的数据库平台,使用集成的商业智能(BI)工具提供了企业级的数据管理。Microsoft SQL Serve

18、r 2005数据库引擎为关系型数据和结构化数据提供了更安全可靠的存储功能,使用户可以构建和管理用于业务的高可用和高性能的数据应用程序。Microsoft SQL Server 2005结合了分析、报表、集成和通知功能。这使企业可以构建和部署经济有效的BI解决方案,帮助团队通过记分卡、Dashboard、Webservices、和移动设备将数据应用推向业务的各个领域。Microsoft SQL Server 2005数据库界面如图2-3所示:图2-3 Microsoft SQL Server 2005数据库界面使用Java开发即时聊天系统QQ项目相对简单,只需要正确安装JDK、Eclipse和M

19、icrosoft SQL Server 2005数据库即可。2.3相关技术2.3.1 Java网络编程原理Java语言实在网络环境下诞生的,所以Java语言虽然不能说是对于网络编程的支持最好的语言,但是必须说是一种对于网络编程提供良好支持的语言,使用Java语言进行网络编程是一件比较轻松的工作。Java语言网络编程原理如图2-4所示:图2-4 Java语言网络编程原理(1)客户端程序: import java.io.*;import .*;public class TalkClient public static void main(String args) trySocket socket=

20、new Socket(127.0.0.1,4700);/向本机的4700端口发出客户请求 BufferedReader sin=new BufferedReader(new InputStreamReader(System.in);/由系统标准输入设备构造BufferedReader对象 PrintWriter os=new PrintWriter(socket.getOutputStream();/由Socket对象得到输出流,并构造PrintWriter对象 BufferedReader is=new BufferedReader(new InputStreamReader(socket.

21、getInputStream();/由Socket对象得到输入流,并构造相应的BufferedReader对象 String readline;readline=sin.readLine(); /从系统标准输入读入一字符串 while(!readline.equals(bye)/若从标准输入读入的字符串为 bye则停止循环 os.println(readline);/将从系统标准输入读入的字符串输出到Serveros.flush();/刷新输出流,使Server马上收到该字符串 System.out.println(Client:+readline);/在系统标准输出上打印读入的字符串 Sys

22、tem.out.println(Server:+is.readLine();/从Server读入一字符串,并打印到标准输出上 readline=sin.readLine(); /从系统标准输入读入一字符串 /继续循环 os.close(); /关闭Socket输出流 is.close(); /关闭Socket输入流 socket.close(); /关闭Socketcatch(Exception e) System.out.println(Error+e); /出错,则打印出错信息 (2)服务器端程序: import java.io.*;import .*;import java.applet

23、.Applet;public class TalkServerpublic static void main(String args) tryServerSocket server=null;tryserver=new ServerSocket(4700);/创建一个ServerSocket在端口4700监听客户请求 catch(Exception e) System.out.println(can not listen to:+e);/出错,打印出错信息 Socket socket=null;trysocket=server.accept();/使用accept()阻塞等待客户请求,有客户

24、/请求到来则产生一个Socket对象,并继续执行 catch(Exception e) System.out.println(Error.+e);/出错,打印出错信息 String line;BufferedReader is=new BufferedReader(new InputStreamReader(socket.getInputStream();/由Socket对象得到输入流,并构造相应的BufferedReader对象 PrintWriter os=newPrintWriter(socket.getOutputStream();/由Socket对象得到输出流,并构造PrintWri

25、ter对象 BufferedReader sin=new BufferedReader(new InputStreamReader(System.in);/由系统标准输入设备构造BufferedReader对象 System.out.println(Client:+is.readLine();/在标准输出上打印从客户端读入的字符串 line=sin.readLine();/从标准输入读入一字符串 while(!line.equals(bye)/如果该字符串为 bye,则停止循环 os.println(line);/向客户端输出该字符串 os.flush();/刷新输出流,使Client马上收到

26、该字符串 System.out.println(Server:+line);/在系统标准输出上打印读入的字符串 System.out.println(Client:+is.readLine();/从Client读入一字符串,并打印到标准输出上 line=sin.readLine();/从系统标准输入读入一字符串 /继续循环 os.close(); /关闭Socket输出流 is.close(); /关闭Socket输入流 socket.close(); /关闭Socketserver.close(); /关闭ServerSocketcatch(Exception e)System.out.pr

27、intln(Error:+e);/出错,打印出错信息 2.3.2 JDBC连接数据库JDBC连接数据库是每一门编程语言的重中之重,因为我们所处的社会随时都会跟数据打交道,因此连接数据库是我们编程中必须做的任务之一。JDBC连接SQL数据库代码如下:package jdbc.test;import java.sql.*;public class Test public static void main(String srg) String driverName = com.microsoft.sqlserver.jdbc.SQLServerDriver; / 加载JDBC驱动 String db

28、URL = jdbc:sqlserver:/localhost:1433; DatabaseName=mytest; / 连接服务器和数据库mytest String userName = sa; / 默认用户名 String userPwd = xushouwei; / 密码 Connection dbConn = null; Statement stmt = null; try Class.forName(driverName); dbConn = DriverManager.getConnection(dbURL, userName, userPwd); stmt = dbConn.cr

29、eateStatement(); System.out.println(Connect Succeed!); / 连接成功控制台输出语句 ResultSet rs = stmt.executeQuery(select * from mytest); while (rs.next() System.out.print(rs.getInt(1) + + rs.getString(2) + + rs.getString(3) + n); catch (Exception e) e.printStackTrace(); 2.3.3 JDBC操作数据库一个项目的建立离不开与数据库打交道,对数据库实现各种操作(如:增、删、改、查)

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1