溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Java遠(yuǎn)程配置的服務(wù)器調(diào)試與管理方法是什么

發(fā)布時(shí)間:2021-12-01 17:05:50 來(lái)源:億速云 閱讀:159 作者:iii 欄目:編程語(yǔ)言

本篇內(nèi)容主要講解“Java遠(yuǎn)程配置的服務(wù)器調(diào)試與管理方法是什么”,感興趣的朋友不妨來(lái)看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來(lái)帶大家學(xué)習(xí)“Java遠(yuǎn)程配置的服務(wù)器調(diào)試與管理方法是什么”吧!

1,Socket ,ServerSocket:

Socket 位于java.net.包中,這是一個(gè)對(duì)于網(wǎng)絡(luò)通信來(lái)說(shuō)及其重要的類,無(wú)論是那種語(yǔ)言,都會(huì)有Socket類的定應(yīng)用或許,存在的差異也僅僅是在表示和組織上有所不同,Socket中文稱它為套接字,javaAPI中可以查看相應(yīng)的介紹 一個(gè)ServerSocket構(gòu)造一對(duì)通信套接字方法如下

ServerSocket sr=new ServerSocket(port);  Socket sc=new Socket("ip",port);

其中ServerSocket 的accpet方法十分重要,當(dāng)一個(gè)服務(wù)套接字建立之后它一直阻塞等待一個(gè)套接字的請(qǐng)求,直到建立連接。

部分計(jì)算機(jī)網(wǎng)絡(luò)的書(shū)籍對(duì)套接字有這樣的定義 套接字 =ip+port;一個(gè)套接字是由一個(gè)由一個(gè)ip地址和一個(gè)端口組成的,在網(wǎng)絡(luò)通信中的底層實(shí)現(xiàn)也的確如此,要一個(gè)進(jìn)程通信就必須為之制定工作端口,在連接端口之后才能在該端口上通信.

2, InputStream , OutputStream

當(dāng)一個(gè)套接字連接成功后就可以獲得基于這個(gè)套接字的輸入輸出流,一切數(shù)據(jù)的發(fā)送和接受都離不開(kāi)輸出輸入流,我們可以通過(guò)流封裝的方法選擇你要輸入或者輸出的數(shù)據(jù)類型,

請(qǐng)看如下例子:

這是一個(gè)完整服務(wù)器端的例子請(qǐng)仔細(xì)閱讀注釋

  1. //Server.java  

  2. import java.net.*;  

  3. import java.io.*;  

  4. public class Server {  

  5. public static void main(String args[])  

  6. {  

  7. ServerSocket server=null;//定義服務(wù)套接字  

  8. Socket you=null;  

  9. String s=null;  

  10. DataOutputStream out=null;//定義流  

  11. DataInputStream in=null;  

  12. try{  

  13. server=new ServerSocket(4331);/*在這里建立服務(wù)器套接字,
    服務(wù)套接字的構(gòu)造方法只需要有服務(wù)端口就行,這個(gè)道理很簡(jiǎn)單*/  

  14. }catch(Exception e){System.out.println(e.getMessage());}
    //捕捉異常  

  15. try{  

  16. System.out.println("wait.....");  

  17. you=server.accept();//在這里阻塞等待客戶的介入  

  18. out=new DataOutputStream(you.getOutputStream());//取得輸出流  

  19. in=new DataInputStream(you.getInputStream());//取得輸出流  

  20. while(true)//循環(huán)讀  

  21. {  

  22. s=in.readUTF();  

  23. int m=Integer.parseInt(s);  

  24. out.writeUTF("Hello i am server!");//發(fā)送信息  

  25. out.writeUTF("X 2:"+s);  

  26. System.out.println("Server receive :"+s);  

  27. Thread.sleep(300);//f防止組賽,沒(méi)有這一個(gè)語(yǔ)句或占用很多cpu和內(nèi)存  

  28. }  

  29. }catch(Exception e){System.out.println("Client leave!");}  

  30. }  

上面是一個(gè)簡(jiǎn)單的服務(wù)器端程序 顯示了如何實(shí)現(xiàn)套接字的服務(wù)器構(gòu)建,下面是一個(gè)Java遠(yuǎn)程配置的客戶端

  1. import java.io.*;  

  2. import java.net.*;  

  3. public class Client {  

  4. public static void main(String args[])  

  5. {  

  6. String s=null;  

  7. Socket mysocket;//創(chuàng)建客戶端套接字  

  8. DataInputStream in=null;  

  9. DataOutputStream out=null;  

  10. try{  

  11. mysocket=new Socket("127.0.0.1",4331);/
    *注意實(shí)例化的構(gòu)造方法與服務(wù)器有什么不同*/  

  12. System.out.println("localport:"+mysocket.getLocalPort());  

  13. System.out.println("localAddress:"+mysocket.
    getLocalAddress());  

  14. System.out.println("localSocketAddress:"+mysocket.
    getLocalSocketAddress());  

  15. System.out.println("Chanel:"+mysocket.getChannel());  

  16. // 上面的代碼顯示具體的通信地址端口  

  17. in=new DataInputStream(mysocket.getInputStream());  

  18. out=new DataOutputStream(mysocket.getOutputStream());  

  19. for(int k=1;k<100;kk=k+2)//循環(huán)寫入內(nèi)容  

  20. {  

  21. out.writeUTF(""+k);  

  22. s=in.readUTF();  

  23. System.out.println("客戶端接受的數(shù)據(jù)?。?quot;+s);  

  24. Thread.sleep(500);  

  25. }  

  26. }catch(Exception e){  

  27. System.out.println(e.getMessage());  

  28. }  

  29. }  

到此,相信大家對(duì)“Java遠(yuǎn)程配置的服務(wù)器調(diào)試與管理方法是什么”有了更深的了解,不妨來(lái)實(shí)際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI