首页 > 解决方案 > 如何将 Electron.js 与桌面应用程序的 Java 代码连接起来?

问题描述

我正在构建一个简单的记事本应用程序。我想用 electron.js 构建前端,而对于文件处理或数据库,我想使用 Java 作为后端语言。我应该如何将 Electron 与 Java 后端连接起来。任何人请帮忙。

标签: javaelectrondesktop-application

解决方案


Electron 结合了 Chromium 渲染引擎和 Nodejs 运行时。Electron 本身就是后端。Electron 有两个主要部分。渲染器和主进程。主要流程将建立在 Nodejs 之上。因此,要连接您的 Java 代码,您应该将 Java 代码构建为可执行的 bin 文件。我们可以像这样在 Electron 之间进行通信

const { spawn } = require('child_process');
const javaExternalService = spawn(cliPath, [args]);

javaExternalService.stdout.on('data', data => {
    console.log(`Daemon stdout: ${data}`);
    resolve(data.toString());
    // Here is where the output goes
});
javaExternalService.stderr.on('data', data => {
    console.log(`Daemon stderr: ${data}`);
    resolve(data.toString());
    // Here is where the error output goes
});
javaExternalService.on('close', code => {
    console.log(`Daemon closing code: ${code}`);
    // Here you can get the exit code of the script
});

但这会降低您的电子性能。如何在 Electron Main 进程中连接和管理数据库。


推荐阅读