websocket java实现(java聊天功能怎么做的有没有知道的可以指导一下吗)

本文目录
java聊天功能怎么做的有没有知道的可以指导一下吗
聊天具体是这么聊,聊天室、群聊、一对一。java其实websocket足矣,ws服务器部署起来,客户端程序连接ws服务器服务,用服务器转发作为消息传输机制,当然你要大文件传输和视频通话就用socket转发连接,p2p通信,这里的p2pjava因为都是服务器部署,不需要做外网打洞穿透,因为web服务器他是本地环境,明白不。你用windows应用程序就需要外网穿透打洞,你不可能视频数据也让服务器转发吧,聊天人数越来越多,服务器承受不了,它需要服务器指派点对点单向传输,不去途径服务器。
java怎么做websocket
***隐藏网址***
实现的话要做两件事,一端是在服务器实现service,这个有点像tcplistener一样;
另一个是客户端(浏览器)开发,可以用JS实现:
《html》
《head》
《meta
charset="utf-8"
/》
《script
type="text/javascript"》
var
host
=
’127.0.0.1’;
var
port
=
8080;
var
url
=
’ws://’+host+’:’+port+’/’;
var
w
=
new
WebSocket(url);
//构建于服务器之间的连接通信
《!--var
audioElement
=
document.createElement(’audio’);
--》
《!--audioElement.setAttribute(’src’,
’qqmsg.mp3’);--》
w.onopen
=
function()//通过onopen事件句柄来监听socket的打开事件
{
$(’chat-box’).innerHTML
=
’已连接到服务器......《br/》’;
}
w.onmessage
=
function(e)//用onmessage事件句柄接受服务器传过来的数据
{
var
msg
=
e.data;
var
chatBox
=
$(’chat-box’);
//
audioElement.play();
chatBox.innerHTML
=
chatBox.innerHTML+msg+’《br/》’;
}
function
send()//使用send方法向服务器发送数据
{
var
talk
=
$(’talk’);
var
nike
=
$(’nike’);
w.send(’《strong
style="color:red"》’+nike.value+’:《/strong》’+talk.value);
}
function
$(id)
{
return
document.getElementById(id);
}
《/script》
《/head》
《body》
《div
id="chat-box"
style="border:1px
solid
#cccccc;
width:400px;
height:400px;
overflow:scroll;"》《/div》
昵称:
《input
type="text"
id="nike"/》
《br/》
内容:
《input
type="text"
id="talk"/》
《input
type="button"
id="send"
onClick="send();"
value="发送"/》
《/body》
可参考IBM社区
***隐藏网址***
《/html》

更多文章:
在from子句中可以出现(如何在from 子句中嵌套查询下面的语句在access中出错!)
2026年10月11日 05:20
countif函数统计个数怎么用(countif函数怎么用 详解Excel中countif函数的使用方法)
2026年10月11日 03:30
正则匹配数字之前的字符(正则表达式如何匹配前面是数字、中间是“/”、后面也是数字,就像2/3专业的模式)
2026年10月11日 03:00







