




下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
第Java創(chuàng)建多線程局域網(wǎng)聊天室實例SuperSocketsocket_1=newSuperSocket(9999);
SuperSocketsocket_2=newSuperSocket(9998);
SuperSocketsocket_3=newSuperSocket(9997);
Threads1=newThread(socket_1);
Threads2=newThread(socket_2);
Threads3=newThread(socket_3);
5.服務(wù)器
服務(wù)器的架構(gòu)第三部分所示,代碼實現(xiàn)如下
packageTCP;
importjava.io.IOException;
importjava.io.InputStream;
import.ServerSocket;
import.Socket;
importjava.util.Scanner;
publicclassTCPserver2{
publicstaticvoidmain(String[]args){
Scannerscan=newScanner(System.in);
//實例化具有多線程功能的服務(wù)器專用socket類
//需要傳遞端口號作為初始化變量
SuperSocketsocket_1=newSuperSocket(9996);
SuperSocketsocket_2=newSuperSocket(9998);
SuperSocketsocket_3=newSuperSocket(9997);
//建立三個子線程
Threads1=newThread(socket_1);
Threads2=newThread(socket_2);
Threads3=newThread(socket_3);
try{
while(true){
//開啟線程
s1.start();
s2.start();
s3.start();
if(scan.next()=="123"){
//結(jié)束線程
break;
}finally{
try{
//關(guān)閉套接字
socket_1.close();
socket_2.close();
socket_3.close();
}catch(IOExceptione){
e.printStackTrace();
classSuperSocketextendsSocketimplementsRunnable{
InputStreamis;
byte[]buffer;
Socketsocket=null;
ServerSocketserverSocket=null;
publicSuperSocket(intport){
try{
//初始服務(wù)器型套接字
serverSocket=newServerSocket(port);
buffer=newbyte[1024];
}catch(IOExceptione){
e.printStackTrace();
@Override
publicvoidrun(){
try{
//等待端口連接
socket=serverSocket.accept();
//連接完成后創(chuàng)建輸入流
is=socket.getInputStream();
//讀取客戶端傳送信息
intlen=is.read(buffer);
Stringstr=newString(buffer,0,len);
System.out.println(str);
}catch(IOExceptione){
e.printStackTrace();
}
客戶端
客戶端的架構(gòu)第三部分所示,代碼實現(xiàn)如下
packageTCP;
importjava.io.IOException;
importjava.io.OutputStream;
import.InetAddress;
import.Socket;
import.UnknownHostException;
importjava.util.Scanner;
publicclassTCPclient{
publicstaticvoidmain(String[]args){
InetAddressaddress=null;
Socketsocket=null;
OutputStreamos=null;
Stringmessage=null;
Scannersca=null;
try{
//得到本機IP地址
address=InetAddress.getByName("6");
//規(guī)定端口號,建立套接字
intport=9998;
socket=newSocket(address,port);
//綁定套接字的輸出流
os=socket.getOutputStream();
sca=newScanner(System.in);
while(true){
message=sca.next();
//寫入輸出流,在局域網(wǎng)中傳輸
os.write(message.getBytes());
}catch(UnknownHostExceptione){
e.printStackTrace();
}catch(IOExceptione){
e.printStackTrace();
}finally{
try{
//關(guān)閉端口號,關(guān)閉io流
os.close();
socket.close();
}catch(IOExceptione){
e.pr
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025稅法考試題庫及答案詳解
- 2025兒科三基機考試題及答案
- 2025龍灣醫(yī)院招工考試題目及答案
- 基金從業(yè)人員資格練習(xí)題及參考答案一套2025
- 2025年福建省福安市事業(yè)單位公開招聘醫(yī)務(wù)工作者考前沖刺模擬帶答案
- 2025年法考客觀題真題及答案
- 2025年ccaa認(rèn)證人員基礎(chǔ)知識考試試題庫及答案解析
- DB15T 4188.1-2025有色金屬產(chǎn)品碳足跡評價技術(shù)規(guī)范 第1部分:鋅錠產(chǎn)品
- 2025年干氣制乙苯催化劑項目合作計劃書
- 裝飾裝修項目招標(biāo)文件標(biāo)準(zhǔn)模版
- 足浴前臺禮儀培訓(xùn)課件
- 村級財務(wù)業(yè)務(wù)知識培訓(xùn)課件
- 2025年幼兒園中、高級教師職稱考試(綜合素質(zhì))歷年參考題庫含答案詳解(5卷)
- 美術(shù)基礎(chǔ) 課件全套 第1-5章 美術(shù)簡介 -中國民間美術(shù)
- 2024人教版七年級生物下冊期末復(fù)習(xí)全冊考點背誦提綱
- 生物力學(xué)正畸方案優(yōu)化-洞察及研究
- 《中職工程測量技術(shù)專業(yè)《GNSS測量技術(shù)與應(yīng)用》課程標(biāo)準(zhǔn)》
- 公安部門大數(shù)據(jù)管理辦法
- 污廢水減污降碳協(xié)同評估指南
- 2025年上海市(秋季)高考語文真題詳解
- 水廠培訓(xùn)課件
評論
0/150
提交評論