java多线程以及java网络编程实现简单的聊天系统
来源:互联网 发布:php搜索引擎源码 编辑:程序博客网 时间:2024/05/22 04:36
该系统采用java多线程技术及java网络编程技术实现一个基于C/S的聊天系统,系统分为客户端及服务器端:
服务器端主要涉及到以下几个线程:
1.在服务器启动之后会启动一个名为ConnectThread的线程,该线程用来处理用户连接;
2.在服务器启动之后同时会启动一个名为ServerUDP的线程,由名字知道该线程通过UDP进行数据传输的,它是接收用户传过来的消息,并将消息转发给所有在线用户;
· 3.在服务器启动之后还会启动一个ExitThread的线程,该线程用来监听退出的用户,当某个用户退出之后,该线程来更新服务器的在线用户列表,以及将新的在线用户列表 通知给所有在线用户。
客户端涉及到更多的线程:
1.首先是一个名为ClientConnectThread的线程,当用户登陆时通过该线程去尝试与服务器端进行连接,如果连接成功,则进入到用户聊天界面
当用户登陆成功之后会启动以下两个线程:
(1)其中一个名为ReceiveMessageThread的线程,用来接收服务器发送过来的消息;
(2)另一个名为ReceiveUserslistThread的线程,用来接收服务器发过来的更新后的用户列表。
2.当用户进行聊天时候会启动一个名为SendMessageThread的线程,通过UDP传输协议向服务器端发送数据。
系统涉及到的主要界面:
输入端口号之后启动了,其中端口号限制在1024到65535之间,启动后等待用户连接,以及接收用户发过来的消息,启动之后的界面为:
客户端登陆界面:
客户端登陆成功之后的界面:
登陆多个用户时候,客户端以及服务器端在线用户列表的变化如图所示:
其中一个用户退出之后客户端以及服务器端在线用户列表的变化:
当服务器退出的时候,客户端的提示消息:
该系统在传输数据的过程中即用到了TCP协议也用到了UDP协议,并且使用了很多线程,熟悉并掌握该系统的实现方法非常有助于理解java多线程以及java网络编程,本系统并不完善,例如还未实现用户与用户之间的单聊,路漫漫其修远兮,吾将上下而求索。最后非常感谢张龙张老师,没有他的视频以及他提供的源代码以我个人可能很难完成这个系统。
- java多线程以及java网络编程实现简单的聊天系统
- Java网络编程以及简单的聊天程序
- Java网络编程:多线程聊天
- java编程网络编程,多线程,小型聊天系统
- java多线程socket实现简单的聊天
- Java网络编程:简单聊天机器人实现案例
- Java的Socket网络编程以及多线程
- Java一步一脚印—通过简单的TCP网络编程实现局域网的聊天对话
- java网络编程及简单聊天
- JAVA网络编程——简单的聊天程序
- JAVA 多线程实现简单UDP一对一聊天
- Java网络----Socket, 多线程实现内网多人聊天及一对一聊天
- java网络编程实现一个聊天程序
- java网络编程实现两端聊天
- java网络socket编程(七)之java中NIO实现聊天系统的群聊功能
- java网络socket编程(八)之java中BIO实现聊天系统的群聊功能
- Linux网络编程(四)——多线程实现简单的聊天(linux 服务器端 windows客户端)
- java多线程理解 以及java实现的简单的死锁
- UIWebView - 1
- java 中特殊字符
- struts2 action 使用心得 - 1
- 安卓源码--Launcher2去除两边阴影效果
- NYOJ-63-小猴子的下落
- java多线程以及java网络编程实现简单的聊天系统
- 同步函数
- android 属性学习
- Android读取word文件
- OC —— 属性
- ssh struts小案例hello
- 看了一个多月,终于决定要买房了
- 《UNIX网络编程》思考1---有关socket的几个重要概念
- 影像信息提取之-----混淆矩阵计算