Java远程控制如何进行客户端配置

开发 后端
Java远程控制如何进行客户端的配置呢?这个问题需要我们仔细对待,一个好的客户端就意味着一个优秀的系统。下面我们就详细的看看如何配置。

Java远程配置需要很多程序员花费大量的时间进行相关问题的解决。下面我们就来看看程序员到底做的是什么样的工作。RPC 是英文远程方法调用的缩写,见名知意,就是在本地计算机上调用远程计算机上的方法或着过程。

既然我们知道了 如何知道了两台计算机如何通信,那么请这样想想我们不是给Java远程配置发的普通文本信息而是发的可执行命令呢,会有什么样的结果呢?

在这一个部分之前先认识一个java类 Runtime 类 这个类有一个静态方法 getRuntime它获得一个对象又可以调用一个叫做exec的方法来执行命令 演示如下

 

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

 

Exec()方法就可以放入你想要运行的命令这样你就可以在机器上运行你的指令了。

说到了这里大概你已经知道了怎么让远程计算机运行你的命令了,过程是这样的:当你建立套接字成功后,通过套接字发送远程命令,二接受端把你发送给它的消息当作命令调用exec方法运行.

注意exec只能运行dos命令,如果需要运行自己的方法就必须自己编写,但是作为远程控制完全调用DOS已经是无所不能了。

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

先看客户端吧 好好看注释

 

 

  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);/*我们要随时等待客户端的命令所以要开辟以线程,如果连上了主机那么我们谁是候命这就是需要开一个线程*/  
  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();//启动线程  
  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("接受线程启动");  
  40. while(true)  
  41. {  
  42. try{  
  43. String s=in.readUTF();  
  44. f(s);//调用方法运行远程命令  
  45. Thread.sleep(200);  
  46. }catch(Exception e){}  
  47. try {  
  48. Thread.sleep(200);/*为了防止cpu占用过高或者内存占用过大这一句话是必要的*/  
  49. } catch (InterruptedException e) {  
  50. // TODO Auto-generated catch block  
  51. e.printStackTrace(); 

 

 

以上就是对Java远程配置的相关介绍。

【编辑推荐】

  1. Java多线程如何创建多个线程
  2. Java多线程优化之偏向锁原理分析
  3. Java多线程初学者指南系列教程
  4. 使用Java多线程实现任务分发
  5. 用Java多线程实现无阻塞读取远程文件
责任编辑:张浩 来源: CSDN
相关推荐

2010-03-18 17:39:46

Java Socket

2010-01-05 14:32:01

JSON 数据

2013-11-27 10:21:44

远程控制软件

2010-06-01 14:35:16

SVN仓库导出

2010-06-01 09:59:00

SVN客户端安装及环境

2011-09-05 12:36:10

2018-01-12 09:20:55

2010-12-31 14:23:57

Exchange Se

2016-12-12 14:55:20

向日葵远程控制

2010-05-31 19:41:17

SVN客户端配置

2011-03-24 13:00:31

配置nagios客户端

2013-11-19 13:31:16

远程控制软件

2009-06-08 15:18:34

EJB远程客户端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监控Linux

2011-04-06 14:24:20

Nagios监控Linux

2021-06-22 15:06:13

Redis客户端 Redis-clie

2010-03-17 18:04:55

java Socket
点赞
收藏

51CTO技术栈公众号