electron call java_【Java】Electron或node如何更好的调用jar包启动一个spring boot的服务...

我在开发一个Electron桌面应用,其中需要连接mysql或oracle数据库,我的方案是用spring boot写了一个restful API服务器,然后在Electron上以网络请求的方式来调用这个服务,现在我希望通过我的应用来任意启动或关闭这个服务,我用maven将这个restful服务打成了个jar包,我该如何启动它呢?

我试着用了nodejs 的child_process 模块,以命令行的方式来启动这个jar包,代码如下:

var childProcess = require('child_process');

var options = {maxBuffer:1024*1024*100, encoding:'utf8', timeout:5000};

var child = childProcess.exec('java -jar *******.jar', options, function (error, stdout, stderr) {

if (error) {

console.log(error.stack);

console.log('Error Code: '+error.code);

console.log('Error Signal: '+error.signal);

}

console.log('Results: \n' + stdout);

if (stderr.length){

console.log('Errors: ' + stderr);

}

});

但是我认为这种方式是拿来跑命令的,并不是拿来像我这样启动一个java服务的,所以效果非常不理想,当前这样子情况是,服务可以启动,但是是在我已经跑了回调后才真实启动,并可以接受我的调用和连接的,所以感觉服务启动延迟了,而且由于这是一个服务,启动日志量很大,所以会报错Error: stdout maxBuffer exceeded,

所以nodejs应该如何去启动一个jar包服务,或者我这样的方案是不正确的,我应该如何实现更好的连接oracle数据库或mysql数据库,以什么样的方案去连接?

回答

启动java项目特别是spring boot,就是执行命令的。

你所说的启动一个java服务具体是想如何启动?

请问博主这样启动服务后是如何关闭的??

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值