美文网首页
基于java语言的C/S模式网络聊天室软件

基于java语言的C/S模式网络聊天室软件

作者: 奔跑骚年 | 来源:发表于2018-12-27 08:58 被阅读0次

一 需求分析

采用C/S模式,基于TCP协议编程的方式,使得各个用户通过服务器转发实现聊天的功能

分为三大模块:客户端模块、服务器端模块和公共辅助类模块

客户端模块的主要功能:

登陆功能:用户可以注册,然后选择服务器登入聊天室

显示用户:将在线用户显示在列表中

接收信息:能接收其他用户发出的信息

发送信息:能发出用户要发出的信息

服务器端模块的主要功能:

检验登陆信息:检查登陆信息是否正确,并向客户端返回登陆信息,如信息正确。就允许用户登陆

显示在线状态:将该用户的状态发给各在线用户

转发聊天信息:将消息转发给所有在线的用户

公共辅助类模块的主要功能:

定义完整的消息传递机制

对消息转发的方式进行有效约束

规定消息类型

二 程序设计

2.1 程序设计思想

实现网络聊天室编程,关键在于Socket通信,程序的功能都是在Socket的基础上一层一层增加的。

实现Socket通信的基本方法为以下4个步骤:

客户端与服务器端分别实例化ServerSockot/Socket

打开连接到Socket的面向对象输入输出流

利用输入输出流按照TCP协议对Socket进行读写操作

关闭输入输出流和Socket

我们要实现的功能都是在第3步对Socket的输入输出流做相应的操作:

涉及到多客户端并发访问,必须用线程进行控制,不同的处理线程为不同的客户服务,主线程只负责循环等待,处理线程负责网络连接,接受客户输入的信息,根据消息类型对消息转发。

参考文档和完整的文档和源码下载地址:

https://www.write-bug.com/article/1407.html

相关文章

  • 基于java语言的C/S模式网络聊天室软件

    一 需求分析 采用C/S模式,基于TCP协议编程的方式,使得各个用户通过服务器转发实现聊天的功能 分为三大模块:客...

  • JavaWeb

    JavaWeb使用Java语言开发基于互联网的项目 软件架构c / s : client / server 客户端...

  • 2.1.1HTML

    web概念概述 *JavaWeb:使用Java语言开发基于互联网的项目 *软件架构:1.C/S:Client/Se...

  • web概念概述

    javaweb:使用java语言基于互联网的项目 软件架构:c/s:client/server 客户端/服务器端如...

  • Netty Reactor模型

    无论是C++还是Java编写的网络框架,大多数都是基于Reactor模式进行设计和开发,Reactor模式基于事件...

  • 基于Java语言的C/S模式通讯录备份和查询软件

    一 需求分析 本设计要求完成一个基于C/S模式的通讯录备份软件,采用C/S架构,具有易用、美观的图形界面。 1.1...

  • 基于Java语言的C/S模式通讯录备份和查询软件

    一 需求分析 本设计要求完成一个基于C/S模式的通讯录备份软件,采用C/S架构,具有易用、美观的图形界面。 1.1...

  • NIO Reactor模型 & Netty线程模型

    什么是Reactor线程模型?无论是 C++ 还是 Java 编写的网络框架,大多数都是基于 Reactor 模式...

  • 我对JAVA面向对象的理解

    在java中,除了八种基本数据类型,一切皆对象。 java是基于C++设计的语言,而C++又是继承自C语言,C语言...

  • 网络编程

    网络编程 1.系统架构 C/S客户端与服务器 ,B/S浏览器与服务器服务器端的开发语言:java,.net,c/c...

网友评论

      本文标题:基于java语言的C/S模式网络聊天室软件

      本文链接:https://www.haomeiwen.com/subject/ibillqtx.html