- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
计算机科学与技术学院
2012届学生毕业实习报告
专 业: 网络工程
班 级: 0802班
姓 名: 张龙
指导教师: 金瑜
实习单位: 武汉至诚无限科技发展有限公司
实习时间: 2012.2.13-2012.3.2
一、项目简介
随着计算机网络的不断普及和高带发展,人们对网络的使用越来越频繁,对网络应用的需求也越来越大.网络即时通讯系统已经被大家普遍认同、使用,甚至重度使用,像我们大家非常熟悉的QQ软件,就是一个非常典型的聊天软件,尤其深受国内的广大用户的喜爱,类似的软件还有中国移动的飞信,新浪的UC等等。信息化是当今世界经济和社会发展的大趋势。这些即时通讯工具的应用使得我们的沟通和交流的效率到了很大的提高。本文围绕Java编程语言在网络编程方面的具体应用,论述了使用面向对象方法,对计算器程序进行需求分析、概要设计、详细设计,最后使用Java编程实现的全过程。在编程我们使用的java语言,是目前比较流行的编程语言。在当今这个网络的时代,java语言在网络编程方面的优势使得网络编程有了更好的选择。Java语言最大的特点是具有跨平台性,使其不受平台不同的影响,得到了广泛的应用。
二、需求分析
在网络越来越发达的今天,人们对网络的依赖越来越多,越来越离不开网络,由此而产生的聊天工具越来越多,网络聊天时一类的聊天系统的发展日新月异,因此产生了制作一个网络聊天工具的;而且通过制作该程序还能更好的学习网络软件编程知识.功能要求(1)登录功能.(2)客户可以通过服务器转发,实现一对一和多对多聊天.(3)实现呼叫功能.(4)客户端程序应该可以实时显示目前其它用户的状态.服务器端
2.2、客户端
2.2、聊天室客户端主要包括5个文件,它们的功能如下:
(1)ChatClient.java:包含名为ChatClient的public类,其主要功能为定义客户端的界面,添加事件侦听与事件处理。该类定义了Connect()与DisConnect()方法实现与服务器的连接与断开连接。当登录到指定的服务器时,调用ClientReceive类实现消息收发,同时该类还定义了SendMessage()方法来向其他用户发送带有表情的消息或者悄悄话。
(2)ClientReceive.java:该类是实现服务器端与客户端消息收发的类。
(3)ConnectConf.java:该类继承自JDialog,是用户对所要连接的服务器IP及侦听端口进行修改配置的类。
(4)UserConf.java:该类继承自JDialog,是用户对连接到服务器所显示的用户名进行修改配置的类。
(5)Help.java:客户端程序的帮助类。
五、功能截图
1、服务端启动:
客户端设置:
3、客户端启动:
4、聊天通信:
(1)群聊和单聊
(2)悄悄话
5、帮助:
(1)服务器端帮助
(2)客户端帮助
六、核心代码
1、服务器端
(1)ChatServer.java:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
import .*;
import java.io.*;
/*
* 聊天服务端的主框架类
*/
public class ChatServer extends JFrame implements ActionListener{
public static int port = 8888;//服务端的侦听端口
ServerSocket serverSocket;//服务端Socket
Image icon;//程序图标
JComboBox combobox;//选择发送消息的接受者
JTextArea messageShow;//服务端的信息显示
JScrollPane messageScrollPane;//信息显示的滚动条
JTextField showStatus;//显示用户连接状态
JLabel sendToLabel,messageLabel;
JTextField sysMessage;//服务端消息的发送
JButton sysMessageButton;//服务端消息的发送按钮
UserLinkList userLinkList;//用户链表
//建立菜单栏
JMenuBar jMenuBar = new JMenuBar();
//建立菜单组
JMenu serviceMenu = new JM
文档评论(0)