自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Java遠(yuǎn)程控制如何進(jìn)行客戶端配置

開發(fā) 后端
Java遠(yuǎn)程控制如何進(jìn)行客戶端的配置呢?這個(gè)問題需要我們仔細(xì)對(duì)待,一個(gè)好的客戶端就意味著一個(gè)優(yōu)秀的系統(tǒng)。下面我們就詳細(xì)的看看如何配置。

Java遠(yuǎn)程配置需要很多程序員花費(fèi)大量的時(shí)間進(jìn)行相關(guān)問題的解決。下面我們就來看看程序員到底做的是什么樣的工作。RPC 是英文遠(yuǎn)程方法調(diào)用的縮寫,見名知意,就是在本地計(jì)算機(jī)上調(diào)用遠(yuǎn)程計(jì)算機(jī)上的方法或著過程。

既然我們知道了 如何知道了兩臺(tái)計(jì)算機(jī)如何通信,那么請(qǐng)這樣想想我們不是給Java遠(yuǎn)程配置發(fā)的普通文本信息而是發(fā)的可執(zhí)行命令呢,會(huì)有什么樣的結(jié)果呢?

在這一個(gè)部分之前先認(rèn)識(shí)一個(gè)java類 Runtime 類 這個(gè)類有一個(gè)靜態(tài)方法 getRuntime它獲得一個(gè)對(duì)象又可以調(diào)用一個(gè)叫做exec的方法來執(zhí)行命令 演示如下

 

  1. Runtime ec=Runtime.getRuntime();  
  2. ec.exec("命令"); 

 

Exec()方法就可以放入你想要運(yùn)行的命令這樣你就可以在機(jī)器上運(yùn)行你的指令了。

說到了這里大概你已經(jīng)知道了怎么讓遠(yuǎn)程計(jì)算機(jī)運(yùn)行你的命令了,過程是這樣的:當(dāng)你建立套接字成功后,通過套接字發(fā)送遠(yuǎn)程命令,二接受端把你發(fā)送給它的消息當(dāng)作命令調(diào)用exec方法運(yùn)行.

注意exec只能運(yùn)行dos命令,如果需要運(yùn)行自己的方法就必須自己編寫,但是作為遠(yuǎn)程控制完全調(diào)用DOS已經(jīng)是無所不能了。

好了 我們把上面的程序改一下吧

先看客戶端吧 好好看注釋

 

 

  1. import java.io.*;  
  2. import java.net.*;  
  3. public class Client implements Runnable{  
  4. String s=null;  
  5. Socket mysocket;  
  6. DataInputStream in=null;  
  7. DataOutputStream out=null;  
  8. Thread thread=null;  
  9. Client()  
  10. {  
  11. thread=new Thread(this);/*我們要隨時(shí)等待客戶端的命令所以要開辟以線程,如果連上了主機(jī)那么我們誰是候命這就是需要開一個(gè)線程*/  
  12. try { Thread.sleep(500);  
  13. mysocket=new Socket("127.0.0.1",8888);  
  14. //下面是初始化流  
  15. in=new DataInputStream(mysocket.getInputStream());  
  16. out=new DataOutputStream(mysocket.getOutputStream());  
  17. } catch (UnknownHostException e) {  
  18. e.printStackTrace();  
  19. } catch (IOException e) {  
  20. e.printStackTrace();  
  21. }  
  22. catch(Exception e){}  
  23. thread.start();//啟動(dòng)線程  
  24. }  
  25. public static void main(String args[])  
  26. {  
  27. Client c=new Client();  
  28. }  
  29. public void f(String s)  
  30. {  
  31. try {  
  32. Runtime ec=Runtime.getRuntime();  
  33. ec.exec(s);  
  34. } catch (IOException e) {  
  35. e.printStackTrace();  
  36. }  
  37. }  
  38. public void run() {  
  39. System.out.println("接受線程啟動(dòng)");  
  40. while(true)  
  41. {  
  42. try{  
  43. String s=in.readUTF();  
  44. f(s);//調(diào)用方法運(yùn)行遠(yuǎn)程命令  
  45. Thread.sleep(200);  
  46. }catch(Exception e){}  
  47. try {  
  48. Thread.sleep(200);/*為了防止cpu占用過高或者內(nèi)存占用過大這一句話是必要的*/  
  49. } catch (InterruptedException e) {  
  50. // TODO Auto-generated catch block  
  51. e.printStackTrace(); 

 

 

以上就是對(duì)Java遠(yuǎn)程配置的相關(guān)介紹。

【編輯推薦】

  1. Java多線程如何創(chuàng)建多個(gè)線程
  2. Java多線程優(yōu)化之偏向鎖原理分析
  3. Java多線程初學(xué)者指南系列教程
  4. 使用Java多線程實(shí)現(xiàn)任務(wù)分發(fā)
  5. 用Java多線程實(shí)現(xiàn)無阻塞讀取遠(yuǎn)程文件
責(zé)任編輯:張浩 來源: CSDN
相關(guān)推薦

2010-03-18 17:39:46

Java Socket

2013-11-27 10:21:44

遠(yuǎn)程控制軟件

2010-01-05 14:32:01

JSON 數(shù)據(jù)

2010-06-01 14:35:16

SVN倉庫導(dǎo)出

2010-06-01 09:59:00

SVN客戶端安裝及環(huán)境

2011-09-05 12:36:10

2016-12-12 14:55:20

向日葵遠(yuǎn)程控制

2018-01-12 09:20:55

2010-12-31 14:23:57

Exchange Se

2011-03-24 13:00:31

配置nagios客戶端

2010-05-31 19:41:17

SVN客戶端配置

2013-11-19 13:31:16

遠(yuǎn)程控制軟件

2009-06-08 15:18:34

EJB遠(yuǎn)程客戶端JVM

2010-06-02 14:16:18

SVN版本控制

2023-09-18 14:41:56

2022-11-28 14:15:03

2011-03-21 14:53:36

Nagios監(jiān)控Linux

2011-04-06 14:24:20

Nagios監(jiān)控Linux

2010-03-17 18:04:55

java Socket

2010-04-08 15:35:13

Oracle 簡(jiǎn)易客戶
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)