java1060基于JAVA的一个简易局域网通信系统设计与实现2.doc_第1页
java1060基于JAVA的一个简易局域网通信系统设计与实现2.doc_第2页
java1060基于JAVA的一个简易局域网通信系统设计与实现2.doc_第3页
java1060基于JAVA的一个简易局域网通信系统设计与实现2.doc_第4页
java1060基于JAVA的一个简易局域网通信系统设计与实现2.doc_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

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

文档简介

摘 要随着Internet在中国的迅速发展,人们日常生活中越来越多地使用聊天室来为自己的工作和学习服务。这种局域网聊天系统的目标是通过在TCP/IP协议之上,实现一个基于Socket的局域网通信,在局域网没有连通Internet的情况下,局域网内的全部机子可以通过一个服务器建立的聊天室进行聊天。所以,论文所设计的就是一个基于C/S模式下的局域网聊天室系统。使用的是当今最流行的Java语言,实现的机制是Socket机制。本系统分为两个主要模块,服务器管理系统功能模块和客户端管理系统功能模块。服务器管理系统功能模块主要实现的功能有:服务器能自行启动,手动暂停连接,手动恢复连接,手动断开连接,建立监听,接受客户端连接。接收,分析,转发聊天信息。能显示在线用户数量以及其用户名。能屏蔽用户,取消用户屏蔽,并且能显示正在屏蔽用户的用户名。能查询客户端用户的公聊信息。账户管理功能,能添加新用户,同时保存新用户注册信息。客户端管理系统功能模块主要实现的功能有:客户端能自行链接到服务器端。用户登录管理,通过验证,实现用户登录。用户注册管理,通过资料填写,实现用户注册。用户聊天管理,接收私聊,群聊信息,显示在线用户用户名,屏蔽用户,取消用户屏蔽,查询用户公聊和私聊信息,文件传输,实现五子棋游戏,翻牌游戏。论文详细阐述了本系统的开发背景、研究意义,开发环境以及系统的需求分析,详细说明了系统的设计,以及系统各功能的实现。本系统界面友好,操作简单,有着很好的应用前景。关键词: java语言,聊天室,多线程;Sockets编程;局域网通信目 录第1章 绪论11.1 选题背景及目的11.2 选题意义11.3 本课题研究思路和方法1第2章 系统开发相关技术介绍22.1 JAVA的网络功能与编程22.1.1 JAVA概述22.1.2 JAVA的特点22.2 IP/TCP协议常识42.3 Socket简介42.3.1 服务器套接字52.3.2 客户端套接字52.4 Java中输入/输出流概念52.5 Java多线程编程技术62.5.1线程的创建和启动62.5.2线程同步62.6 C/S体系结构72.6.1 C/S结构的概念72.6.2 C/S结构的特点7第3章 系统分析与设计93.1 系统需求分析93.1.1 任务概述93.1.2 功能和性能需求93.2 服务器功能管理系统设计103.2.1 服务器管理系统功能模块103.2.2 服务器管理系统整体体流程113.3 客户端管理系统设计133.3.1 客户端管理系统功能模块划分133.4.2 用户聊天管理系统总体流程14第4章 系统的详细设计154.1 服务器功能管理系统的详细设计154.2 客户端管理系统的详细设计16第5章 系统模块的实现205.1 软件开发环境和工具205.2 硬件环境205.3 服务器功能管理系统的实现205.4 客户端管理系统的实现26结 论35参考文献36致 谢373.2.1 服务器管理系统功能模块服务器管理系统主要是一个服务器管理界面,要求能够成功启动服务器,暂停服务器,屏蔽用户,取消屏蔽,清空屏幕,账户管理,公聊信息管理,退出服务器,服务器当前状态显示。如图 3.1所示。图 3.1 服务器管理系统模块图3图 5.1 服务器线用户及其数量的显示图 5.2暂停服务器连接的实现图 5.3恢复服务器连接的实现图5.4蔽用户的实现图 5.5取消屏蔽用户图 5.6 状态管理已注册用户如图5.7所示:当点击添加用户按钮后,进入注册窗口界面的实现。图5.7添加新用户实现8公聊信息管理的实现。界面实现如图5.8所示。主要代码实现如下:class ChatData extends JFrame implements ActionListener图 5.8 公聊信息管理的实现图5.9用户登录界面的实现2用户取回密码的实现。当点击取回密码按钮之后就会出现如图 5.10所示的效果界面。图5.10 密码取回初始化实现当成功完成所有填写之后,取回密码的实现如图5.11所示界面。图5.11 密码取回成功3用户注册界面的实现。界面实现如图5.12所示:其主要相关代码实现如下:创建窗口类UserReg实现用户注册窗口:public class UserReg extends JFrame implements ActionListener图5.12户注册界面填写完成4用户聊天管理的实现当用户成功登录后,用户进入聊天窗口,并且在聊天窗口中的在线用户列表中显示在线用户的用户名,用户数量,在公聊信息和私聊信息文本域中分别显示公聊和私聊信息,界面实现如图 5.15所示。图5.15 聊天主窗口实现点击资料选项中的公聊选项会实现公聊信息查看,界面实现如图5.16所示。图5.16公聊记录点击资料选项中的私聊选项会实现私聊信息查看,界面实现如图5.17所示。图 5.17私聊记录5五子棋游戏的实现主要代码实现如下:class ChessPad extends Panel implements MouseListener,ActionListener int array=new int1919; Scan scanp=new Scan(); Scan scanc=new Scan(); AutoPlay autoPlay=new AutoPlay(); Evaluate evaluatep=new Evaluate(); Evaluate evaluatec=new Evaluate(); Sort sort=new Sort(); int i=0; int x=-1,y=-1,棋子颜色=1; Button button=new Button(重新开局); TextField text_1=new TextField(请黑棋下子), text_2=new TextField(), text_3=new TextField();点击娱乐选项中的五子棋游戏选项后就会实现五子棋游戏的启动,界面实现如图5.18所示。图5.18五子棋开始界面游戏正在进行时就会出现如图5.19所示的界面。图5.19五子棋进行中的界面游戏结束后,并且显示出赢家就会出现如图5.20所示的界面。图5.20五子棋结束界面6翻牌游戏的实现主要代码实现如下:/创建游戏面板,panelNum为row数 public JPanel createGamePanel(Integer panelNum) gamePanel.removeAll(); row=panelNValue(); button_game=new JButtonpanelNum*panelNum; gamePanel.setLayout(new GridLayout(panelNum,panelNum); for(int i=0;ipanelNum*panelNum;i+) button_gamei=new JButton(); button_gamei.setActionCommand(i+); button_gamei.addMouseListener(new GamePanelClick(this); button_gamei.setBackground(Color.yellow); gamePanel.add(button_gamei); this.step=0; this.done=0; step_Label.setText(已用步骤:0步); done_Label.setText(完成的翻转:0/+row*row); this.setSize(row*50+10,row*50+100); this.setVisible(true); return gamePanel; 点击娱乐选项中的翻牌游戏选项后就会实现翻牌游戏的启动,界面实现如图5.21所示。图5.21翻牌游戏开始界面游戏正在进行时就会出现如图5.22所示的界面。图5.22翻牌游戏进行界面游戏结束后,并且显示出赢家就会出现如图5.23所示的界面,图5.23翻牌游戏结束界面 重要提示:本论文由大学论文网毕业论文下载网: 提供如果需要详细内容请与QQ:4991024联系袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃蚂肂莈蒂螄芈芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羁莀蒈羃膇芆蒇蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃虿羆艿薃袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃蚂肂莈蒂螄芈芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羁莀蒈羃膇芆蒇蚃羀膂蒆螅膅蒁薅袇羈莇袄芈蒇袇螀芇蕿蚀聿芆艿蒃肅芅蒁螈羁芄薃薁袆芃芃螆螂芃莅蕿肁节蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈蚂螂羂薁袈肀肁芀蚁羆肁莃袆袂肀薅虿袈聿蚇蒂膇肈莇螇肃肇葿薀罿肆薂螆袅肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羁膂莈蚅袇膁蒀袀螃膀薂蚃肂腿节衿羈腿莄蚂袄芈蒇袇螀芇蕿蚀聿芆艿蒃肅芅蒁螈羁芄薃薁袆芃芃螆螂芃莅蕿肁节蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈蚂螂羂薁袈肀肁芀蚁羆肁莃袆袂肀薅虿袈聿蚇蒂膇肈莇螇肃肇葿薀罿肆薂螆袅肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羁膂莈蚅袇膁蒀袀螃膀薂蚃肂腿节衿羈腿莄蚂袄芈蒇袇螀芇蕿蚀聿芆艿蒃肅芅蒁螈羁芄薃薁袆芃芃螆螂芃莅蕿肁节蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈蚂螂羂薁袈肀肁芀蚁羆肁莃袆袂肀薅虿袈聿蚇蒂膇肈莇螇肃肇葿薀罿肆薂螆袅肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羁膂莈蚅袇膁蒀袀螃膀薂蚃肂腿节衿羈腿莄蚂袄芈蒇袇螀芇蕿蚀聿芆艿蒃肅芅蒁螈羁芄薃薁袆芃芃螆螂芃莅蕿肁节蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈蚂螂羂薁袈肀肁芀蚁羆肁莃袆袂肀薅虿袈聿蚇蒂膇肈莇螇肃肇葿薀罿肆薂螆袅肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羁膂莈蚅袇膁蒀袀螃膀薂蚃肂腿节衿羈腿莄蚂袄芈蒇袇螀芇蕿蚀聿芆艿蒃肅芅蒁螈羁芄薃薁袆芃芃螆螂芃莅蕿肁节蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈蚂螂羂薁袈肀肁芀蚁羆肁莃袆袂肀薅虿袈聿蚇蒂膇肈莇螇肃肇葿薀罿肆薂螆袅肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羁膂莈蚅袇膁蒀袀螃膀薂蚃肂腿节衿羈腿莄蚂袄芈蒇袇螀芇蕿蚀聿芆艿蒃肅芅蒁螈羁芄薃薁袆芃芃螆螂芃莅蕿肁节蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈蚂螂羂薁袈肀肁芀蚁羆肁莃袆袂肀薅虿袈聿蚇蒂膇肈莇螇肃肇葿薀罿肆薂螆袅肅芁薈螁膅莃螄聿膄蒆薇袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃蚂肂莈蒂螄芈芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羁莀蒈羃膇芆蒇蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃虿羆艿薃袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃蚂肂莈蒂螄芈芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羁莀蒈羃膇芆蒇蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃虿羆艿薃袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃蚂肂莈蒂螄芈芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羁莀蒈羃膇芆蒇蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃虿羆艿薃袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃蚂肂莈蒂螄芈芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羁莀蒈羃膇芆蒇蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃虿羆艿薃袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃蚂肂莈蒂螄芈芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羁莀蒈羃膇芆蒇蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃虿羆艿薃袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃螈聿蒄葿袁羁莀蒈羃膇芆蒇蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃虿羆艿薃袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螈螇芁芇莄袀肄膃莄羂艿蒂莃蚂肂莈蒂螄芈芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羁莀蒈羃膇芆蒇蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃虿羆艿薃袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃蚂肂莈蒂螄芈芄蒁袆肀膀蒀罿袃薈芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃蚂肂莈蒂螄芈芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羁莀蒈羃膇芆蒇蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃虿羆艿薃袁

温馨提示

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

评论

0/150

提交评论