如题,实现java代码远程关闭服务器上面的tomcat
就是实现一些网络上空间上面的做法,可以实现对自己管理的空间的tomcat随意的启动和关闭,但是
可以肯定的是他们不在一个服务器上面,不然那么多的客户的tomcat都在自己的网站的服务器上面应该是不可能的
所以应该是通过一个远程的方式控制的,那具体是怎么控制的呢?
麻烦高手给一个代码,或者一个思路也行
我可以实现本机的tomcat的启动和关闭
就是用net start和net stop命令
并且通过tasklist验证tomcat的启动情况
部分代码如下:
- Java code
try { java.lang.Process p = java.lang.Runtime.getRuntime().exec( "net stop \"Apache Tomcat\""); java.io.BufferedReader in = new java.io.BufferedReader( new java.io.InputStreamReader(p.getInputStream())); String s; String t = "成功停止"; boolean restart = false; while ((s = in.readLine()) != null) { if (s.indexOf(t) != -1) { restart = true; break; } } System.out.println("<" + new Date() + "> Tomcat is stop " + (restart ? "OK" : "ERROR")); } catch (Exception e) { e.printStackTrace(); }java.lang.Process p = java.lang.Runtime.getRuntime().exec( "net start \"Apache Tomcat\""); java.io.BufferedReader in = new java.io.BufferedReader( new java.io.InputStreamReader(p.getInputStream())); String s; String t = "启动成功"; boolean restart = false; while ((s = in.readLine()) != null) { if (s.indexOf(t) != -1) { restart = true; break; } }
------解决方案--------------------
其实最偷懒的方法就是:
Runtime run = Runtime.getRuntime();
Process pro = run.exec("d:\\tomcat\\bin\\shutdown.bat");
------解决方案--------------------
我觉得最简单的方式,使在服务器上装一个"木马"
把你在本地运行的那个代码修改一下,让他监听一个端口,你在写个客户端,连上这个端口,控制它的行为.
当然,这个需求不是很常规,通常做法,我们是远程登陆服务器,进行ixie操作