随着网络技术的迅速发展,信息沟通也是信息化管理的一 部分.利用计算机实现工作中的各种问题的沟通,例如工作任 务通知、技术资料传递等,以此来提高工作效率和水平。在程 序设计领域。面向对象的编程技术正在逐步代替面向过程的程 序设计技术,成为计算机应用设计开发的主流。尤其在网络技 术开发中,面向对象的Java语占编程和相关的Java技术正在 以前所未有的速度发展。 1 开发环境和技术准备 1.1开发及运行环境 (1)操作系统:Windows 2000、Windows XP、Windows 2003或Linux等。 (2)开发工具:MyEclipse,JDK6.0。 (3)CPU:Penfium4 1.8GHz。 (4)内存:128MB以上。 1.2技术准备 1.2.1 Socket 0cket是面向客户/服务器模型而设计的.Socket接口是 TCP/IP网络的API.Socket接口定义了许多甬数或例程,Java 程序员可以用它们来开发TCP/IP网络上的应用程序。在Java 中,Socket和ServerSocket类库位于iava.net包中。ServerSocket 用于服务器端.Socket是建立网络连接时使用的。在连接成功 时,应用程序两端都会产生一个Socket实例,只需操作这个实 例,就可完成所需的会话。 1.2.2多线程 多线程是这样一种机制.它允许在程序中并发执行多 个指令流。每个指令流都称为一个线程。彼此间互相独 立。线程又称为轻量级进程.它和进程一样拥有独立的执 行控制。由操作系统负责调度。区别在于线程没有独立的 存储空间.而是和所属进程中的其他线程共享一个存储空 间.这使得线程间的通信远较进程简单。多个线程的执行是 并发的,也就是在逻辑上“同时”,而不管是否是物理上的 “同时”。 -2.3 MVC设计模式 MVC(Model—View—Controller,即模型层一视图层一控制层) 是一种设计模式.它强制地将应用程序的输入、处理以及输出 分开。MVC模型3个核心部分:模型层、视网层和控制层, 分别负担不同的任务。视网层位于用户客户端。模型层和控制 层位于服务器端。 2功能设计 2.1客户端功能 (1)登录上线。 (2)显示其他在线用户。 (3)更新自己的在线用户列表。 (4)与其他上线用户发起会话(一对一私聊)。 (5)与多名上线用户群聊。 (6)发送和接收文件。 2.2服务器端功能 2.2服务器端功能 (1)记录上线用户的信息,将其发送给其他在线用户。 (2)接收用户下线信息,将其发送给其他在线用户。 (3)接收用户群聊信息,将其发送给所有在线用户。 (4)接收用户私聊信息,将其发送给相应的在线用户。 (5)接收用户文件信息,将其发送给相应的在线用户。 2.3功能结构 系统功能结构如图I所示。 ![]() 3.1文件架构 (1)Clientjava文件:客户端主程序源文件。 (2)Clienfframe.java文件:客户端用户界面实现源文件。 (3)ClientUtil.java文件:处理字符串和显示信息工具类源 文件。 (4)Sorverjava文件:服务器端源文件。 (5)Messagejava文件:定义了聊天信息和文件信息。 (6)Usermessage.java文件:定义了用户信息。 (7)Image文件夹:存放程序中使_fI】按钮图片和表情用片. 打j”包时一并打人。 3.2系统架构 3.2.1系统类 (1)Client类:实现客户端的功能。 (2)Clienfframe类:设计客厂T端的用户界面。 (3)ClientUtil类:用于处理字符串和显示信息和表情图片 的工具类。 (4)Server类:服务器端主类,用于实现服务器端功能。 (5)Message类:实现了聊天信息的属性和方法。 (6)Usermessage类:实现了用户信息的属性和方法。 3.22系统娄关系视图 系统类关系视图如图2所示 3.1文件架构 (1)Clientjava文件:客户端主程序源文件。 (2)Clienfframe.java文件:客户端用户界面实现源文件。 (3)ClientUtil.java文件:处理字符串和显示信息工具类源 文件。 (4)Sorverjava文件:服务器端源文件。 (5)Messagejava文件:定义了聊天信息和文件信息。 (6)Usermessage.java文件:定义了用户信息。 (7)Image文件夹:存放程序中使_fI】按钮图片和表情用片. 打j”包时一并打人。 3.2系统架构 3.2.1系统类 |