一种基于Java和Mysql数据库的即时通讯系统及方法技术方案

技术编号:29873024 阅读:18 留言:0更新日期:2021-08-31 23:48
本发明专利技术公开一种基于Java和Mysql数据库的即时通讯系统及方法,涉及通讯技术领域;基于C/S架构,采用Eclipse开发通信端口,通过用户端为用户提供登陆界面,和服务端建立连接,采用hashmap进行tcp消息加密传输,并通过服务端部署socket服务,对所有用户端需要传输的消息进行集中管理,根据用户端请求传输返回各种信息响应,并利用Mysql数据库对产生的数据进行相应存储和操作。

【技术实现步骤摘要】
一种基于Java和Mysql数据库的即时通讯系统及方法
本专利技术公开一种系统及方法,涉及通讯
,具体地说是一种基于Java和Mysql数据库的即时通讯系统及方法。
技术介绍
即时通讯技术,完成通信双方相互传送语言、文件、信息的交流过程。与传统的电子邮件相比,更加快速、便捷、实时、成本低、用户体验好。并且由于IT产业蓬勃发展,互联、移动互联网络的建设,高集成度硬件设备普及率不断开创新高,使终端之间的交互更加适合即时通讯。但现有的即时通讯系统中,针对安全性能优化并不充分,并且消息传送的效率与稳定性也有待改进。
技术实现思路
本专利技术针对现有技术的问题,提供一种基于Java和Mysql数据库的即时通讯系统及方法,针对安全性能优化,并加强了消息传送的效率与稳定性。本专利技术提出的具体方案是:一种基于Java和Mysql数据库的即时通讯方法,基于C/S架构,采用Eclipse开发通信端口,通过用户端为用户提供登陆界面,和服务端建立连接,采用hashmap进行tcp消息加密传输,并通过服务端部署socket服务,对所有用户端需要传输的消息进行集中管理,根据用户端请求传输返回各种信息响应,并利用Mysql数据库对产生的数据进行相应存储和操作。进一步,所述的一种基于Java和Mysql数据库的即时通讯方法中通过用户端设置登录界面,包括设置使用状态和设置消息收发方式。进一步,所述的一种基于Java和Mysql数据库的即时通讯方法中通过服务端监听通信端口,检查用户端是否连接;将接收的新用户发送的注册相关信息,存入Mysql数据库内,分配新用户者对应账号;确认用户的登陆信息以及判断用户使用状态;转发来自不同用户的各种消息。进一步,所述的一种基于Java和Mysql数据库的即时通讯方法中所述通过服务端判断用户使用状态为离线时,将消息转存于Mysql数据库内,判断用户使用状态为登录时,发出离线消息。一种基于Java和Mysql数据库的即时通讯系统,包括用户端服务模块和服务端服务模块,所述即时通讯系统,基于C/S架构,采用Eclipse开发通信端口,用户端服务模块通过用户端为用户提供登陆界面,和服务端建立连接,采用hashmap进行tcp消息加密传输,服务端服务模块在服务端部署socket服务,对所有用户端需要传输的消息进行集中管理,根据用户端请求传输返回各种信息响应,并利用Mysql数据库对产生的数据进行相应存储和操作。进一步,所述的一种基于Java和Mysql数据库的即时通讯系统中用户端服务模块通过用户端设置登录界面,包括设置使用状态和设置消息收发方式。进一步,所述的一种基于Java和Mysql数据库的即时通讯系统中服务端服务模块通过服务端监听通信端口,检查用户端是否连接;将接收的新用户发送的注册相关信息,存入Mysql数据库内,分配新用户者对应账号;确认用户的登陆信息以及判断用户使用状态;转发来自不同用户的各种消息。进一步,所述的一种基于Java和Mysql数据库的即时通讯系统中服务端服务模块通过服务端判断用户使用状态为离线时,将消息转存于Mysql数据库内,判断用户使用状态为登录时,发出离线消息。本专利技术的有益之处是:本专利技术提供一种基于Java和Mysql数据库的即时通讯方法,基于C/S架构,采用Eclipse开发通信端口,通过tcp协议进行文字传输,通过服务端进行用户的管理以及socket通道的开闭,通过socket服务进程,可以降低出现无法传送消息的概率,可控性极强,并且可以与用户端进行监控操作,安全性大大增强,大大提升了消息传输的速率以及数据的可靠性。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术系统模块功能示意图。图2是本专利技术方法应用示意图。图3是本专利技术方法在服务端工作流程示意图。图4是本专利技术方法在用户端工作流程示意图。具体实施方式下面结合附图和具体实施例对本专利技术作进一步说明,以使本领域的技术人员可以更好地理解本专利技术并能予以实施,但所举实施例不作为对本专利技术的限定。本专利技术提供一种基于Java和Mysql数据库的即时通讯方法,基于C/S架构,采用Eclipse开发通信端口,通过用户端为用户提供登陆界面,和服务端建立连接,采用hashmap进行tcp消息加密传输,并通过服务端部署socket服务,对所有用户端需要传输的消息进行集中管理,根据用户端请求传输返回各种信息响应,并利用Mysql数据库对产生的数据进行相应存储和操作。本专利技术方法以C/S架构为基础设计,采用Eclipse开发通信端口,因Eclipse具备集成度高的编写,调试,测试和报错功能,大大减少了开发工程中遇到的问题,从而使开发过程变得更加顺利。并且通过用户端为用户提供易用的登陆界面,和服务端建立连接,和服务端进行通讯,并根据服务端传输回来的各种信息响应执行下一步操作,通过TCP和服务端实现和其他用户端的发送、接受信息消息订阅模块,通过服务端将socket服务进行高可用部署,用于降低因网络问题出现故障的概率。具体应用中,在本专利技术的一些实施例中,通过用户端设置登录界面,包括设置使用状态和设置消息收发方式,使用状态包括在线、离线及隐身,通过用户端能够看到查看其他用户是否上线,能够对新收到的聊天消息进行收发。通过登录界面后的聊天界面可以看到历史信息,以便接收离线消息。通过服务端利用哈希表通过username以及socket保护用户的个人信息不泄露,并实现以下功能:监听设置好的端口,检查用户端是否连接;将接收到新用户发送的注册相关信息,存入Mysql数据库内,然后给使用者分配对应账号;确认用户的登陆信息以及是否处于隐身状态;转发来自不同使用者的各种消息;获取在线,离线及隐身的各种用户状态,进行管理账号信息。利用本专利技术方法时,通过服务端开启socket线程,用户可以通过用户端进行登陆,并进行通讯操作。与此同时,用户通过用户端设置自己的在线状态,例如是否设置为隐身,发送离线消息,设置自己电脑的ip地址,查看各种帮助信息;通过服务端监控信息的发送与接收,监控用户是否在线。在用户端,当用户进行注册后,相关的信息会存入Mysql数据库中。通过服务端的socket开关,显示在线人数,后台服务端,为用户端提供信息转发和在线、离线判断的功能,当发送方的接收方为离线时,服务端可以把消息转存于Mysql数据库内,在接收方下次登录的时候,发出离线消息。通过用户端与某个人进行实时通讯聊天,当接收方下一次登陆时,将上次未发送的消息再次发送,同时用户端还具有群发的功能和设置在线或隐身的状态。本专利技术还提供一种基于Java和Mysql数据库的即时通讯系统,包括用户端服务模块和服务端本文档来自技高网...

【技术保护点】
1.一种基于Java和Mysql数据库的即时通讯方法,其特征是基于C/S架构,采用Eclipse开发通信端口,通过用户端为用户提供登陆界面,和服务端建立连接,采用hashmap进行tcp消息加密传输,并通过服务端部署socket服务,对所有用户端需要传输的消息进行集中管理,根据用户端请求传输返回各种信息响应,并利用Mysql数据库对产生的数据进行相应存储和操作。/n

【技术特征摘要】
1.一种基于Java和Mysql数据库的即时通讯方法,其特征是基于C/S架构,采用Eclipse开发通信端口,通过用户端为用户提供登陆界面,和服务端建立连接,采用hashmap进行tcp消息加密传输,并通过服务端部署socket服务,对所有用户端需要传输的消息进行集中管理,根据用户端请求传输返回各种信息响应,并利用Mysql数据库对产生的数据进行相应存储和操作。


2.根据权利要求1所述的一种基于Java和Mysql数据库的即时通讯方法,其特征是通过用户端设置登录界面,包括设置使用状态和设置消息收发方式。


3.根据权利要求1或2所述的一种基于Java和Mysql数据库的即时通讯方法,其特征是通过服务端监听通信端口,检查用户端是否连接;将接收的新用户发送的注册相关信息,存入Mysql数据库内,分配新用户者对应账号;确认用户的登陆信息以及判断用户使用状态;转发来自不同用户的各种消息。


4.根据权利要求3所述的一种基于Java和Mysql数据库的即时通讯方法,其特征是所述通过服务端判断用户使用状态为离线时,将消息转存于Mysql数据库内,判断用户使用状态为登录时,发出离线消息。


5.一种基于Java和Mysql数据库的即时通讯系...

【专利技术属性】
技术研发人员:杨明宇张宏原罗锦涛
申请(专利权)人:浪潮云信息技术股份公司
类型:发明
国别省市:山东;37

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1