服务器怎么把信息发送给用户,java中怎么用tcp/ip将服务器的消息发送给多个用户...
java中怎么用tcp/ip將服務器的消息發送給多個用戶
關注:253??答案:2??mip版
解決時間 2021-01-31 01:26
提問者╬═掵中注定
2021-01-30 20:03
java中怎么用tcp/ip將服務器的消息發送給多個用戶
最佳答案
二級知識專家往事叫我剪短發
2021-01-30 20:09
你服務器accept方法后是不是會得到一個Socket
為這個Socket(是通過這個Socket和客戶端的Socket進行溝通)分配一個服務
我是這么用的ServerThread tt=new ServerThread(socket);
class?ServerThread
{
private?Socket?so;
public?ServerThread(Socket?s)
{
this.so=s;
}
public?void?send()
{
}
public?void?receive()
{
Thread?re=new?Thread()
{
public?void?run()
{
}
}
}
}
相當于你用手機撥打人工服務,會給你分配一個客服
為這個Socket分配后,寫一個發送方法,和一個接收方法(線程)
然后把ServerThread tt=new ServerThread(socket);中的tt保存到集合中去,要單獨給某個發送
就從集合中取出來.send();這個方法應該帶個參數,把消息對象傳過去就是
全部回答
1樓花落淺殤
2021-01-30 20:52
先來介紹下網絡協議:
tcp/ip
transmission control protocol 傳輸控制協議
internet protocol 互聯網協議
udp
user datagram protocol 用戶數據協議
連接協議:
分為:
面向連接協議: connection oriented protocol
非連接協議: connectionless protocol
1).面向連接協議是指兩臺電腦在傳輸數據前,先會建立一個專屬的連接。就如電信局的交換機會為打電話雙方提供專屬連接一樣。
internet上的面向連接協議就是tcp/ip
特點:確認回應;分組序號;流量控制。
tcp/ip屬于可靠性傳輸,適合不容許有傳輸錯誤的網絡程序設計使用
2).非連接協議:無專屬連接,無分組,容錯,距離短,可同時對多臺電腦進行數據傳輸
internet上的非連接協議就是udp
tcp在網絡通信上有極強的生命力,例如遠程連接(telnet)和文件傳輸(ftp)都需要不定長度的數據被可靠地傳輸。相比之下udp操作簡單,而且僅需要較少的監護,因此通常用于局域網高可靠性的分散系統中client/server應用程序。
socket 是程序與網絡間的一種接口,大部分網絡應用程序都是點對點的,所謂點就是服務器端和客戶端所執行的程序。socket是用來接收和傳送分組的一個端點。
java的socket編程要用到java.net包,最常用的是net包下的6個類:inetaddress(互聯網協議 (ip) 地址)類,socket(套接字)類,serversocket(套接字服務器)類,datagramsocket(發送和接收數據報包的套接字)類,datagrampacket(數據報包)類,multicastsocket(多播數據報套接字類用于發送和接收 ip 多播包)類,其中inetaddress、socket、serversocket類是屬于tcp面向連接協議,datagramsocket、datagrampacket和multicastsocket類則屬于udp非連接協議的傳送類。
本項目因為使用tcp/ip協議,主要用到socket和serversocket類
項目代碼如下
package com.sse.monitor.serv;
import java.io.datainputstream;
import java.io.ioexception;
import java.io.inputstream;
import java.io.outputstream;
import java.io.bufferedoutputstream;
我要舉報
如以上問答內容為低俗/色情/暴力/不良/侵權的信息,可以點下面鏈接進行舉報,我們會做出相應處理,感謝你的支持!
→點此我要舉報以上信息!←
推薦資訊
大家都在看
總結
以上是生活随笔為你收集整理的服务器怎么把信息发送给用户,java中怎么用tcp/ip将服务器的消息发送给多个用户...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 卡卡贷代还信用卡靠谱吗
- 下一篇: 广东和江苏的GDP总量,均已突破万亿美元