gpt4 book ai didi

java - 与 Runnable JAR 共享 JDBC 连接

转载 作者:行者123 更新时间:2023-12-02 10:19:14 25 4
gpt4 key购买 nike

我有一个应用程序将依赖第 3 方 JAR 文件来执行一些代码,该 JAR 是由我们的客户开发的,我们需要在我们的应用程序中包含对 JAR 的调用,他们希望我们可以将当前 SQL 连接作为 JAR 的参数发送

由于没有处理此类场景的经验,我们都认为它应该非常简单,但我们忽略了一个事实,即主类的 main 方法仅接收字符串数组作为参数

我用谷歌搜索了一遍,但找不到类似的需求,这是否完全不符合规定并且不可能实现?

我希望实现的调用看起来像这样:

final Process command = re.exec("java -jar ./MyClientsJar.jar " + arg1 + " " + arg2 + " " + SQLConnection);
command.waitFor();

但是,当然,当我们尝试在客户端的源代码中定义这样的 main 方法时:

  private void MyClientsJARMainClass(String args[], Connection con){}

Eclipse的JAR导出工具找不到主类

除了发送用户、url 和传递参数之外,还有什么想法吗?

最佳答案

当您调用re.exec时,您正在创建一个新进程。由于它是一个新进程,因此您无法共享在另一个进程中定义的连接。

尝试将 jar 用作库。导入该类并使它们成为接受连接作为参数的公共(public)方法。例如:

import MyClientsJARMainClass
...
String[] args = { arg1, arg2 };
MyClientsJARMainClass.mainWithConnection(args, connection);

您的客户在他们的类中添加了这样的方法:

public static void mainWithConnection(String[] args, Connection connection)

关于java - 与 Runnable JAR 共享 JDBC 连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54455732/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com