Java启动停止Windows服务进程

本文介绍了如何使用Java编程语言控制Windows服务进程,包括检测服务器状态、重启宕机的服务,以及启动和关闭谷歌浏览器的chrome.exe进程,简化运维人员的工作流程。
摘要由CSDN通过智能技术生成

我觉得这个功能还是挺常用的,再我们实际企业应用中,肯定都是多台服务器同时部署使用的,这其中就会有一些服务器是数据服务器、接口服务器、专用服务器、或者其他系统的服务器等等。

我们通常会开发一个监测功能,能够检测每台服务器的状态,并且能够知道某个进程的状态,如果它宕机了,我能能直接在页面就重启服务重启进程,不需要再找到运维人员去线下机房重启服务,或者远程重启服务,这样很麻烦。

所以这就用到了我们Java来控制启停Windows服务进程

 很简单,直接上代码吧。我这里那我们的谷歌浏览器演示一下。

先打开谷歌浏览器Chrome,打开任务管理器。

可以发现在任务管理器的详细信息中就有了我们的chrome.exe进程。这就是我们启动和关闭的进程程序。

代码中的进程名称就是 chrome.exe。

url就是这个进程对应的具体位置,可以直接右键打开位置,然后把路径拷贝过来就行了。

代码如下。

public static void main(String[] args) throws IOException{
        // 停止进程
        String kill = killProcess("chrome.exe");
        System.out.println(kill);
         // 启动进程
        String active = startProcess("chrome.exe","C:\\Users\\bihe\\AppData\\Local\\Google\\Chrome\\Application\\chrome.exe");
        System.out.println(active);
    }

启动进程 

public static String startProcess(String processName, String url) throws IOException {
        String s = "进程名称不能为空";
        //需要先检测进程是否存在
        if (!"".equals(processName)) {
            if (!"".equals("此进程已开启")) {
                String kill = killProcess(processName);
                Desktop.getDesktop().open(new File(url));
                s = "进程重启成功";
            } else {
                Desktop.getDesktop().open(new File(url));
                s = "进程开启成功";
            }
        }
        return s;
    }

 关闭进程

//关闭进程
    public static String killProcess(String processName) throws IOException {
        String s = "进程名称不能为空";
        String active = getProcessStatus(getProcessName(), processName);
        if (!"".equals(processName)) {
            if (active.equals("此进程已结束")) {
                s = "进程已关闭,无需再次关闭";
            } else {
                Process p = Runtime.getRuntime().exec("taskkill /F /IM " + processName);
                BufferedReader br = new BufferedReader(new InputStreamReader(p.getInputStream(), "gbk"));
                s = br.readLine().toString();
            }
        }
        return s;
    }

  • 9
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值