【发布时间】:2014-06-25 04:58:03
【问题描述】:
过去,您可以使用 Connector/MXJ 将 MySQL 数据库嵌入到 Java 应用程序中,但是 Connector/MXJ 项目已被 Oracle 停产(感谢 Larry),所以我正在寻找最好的方法来完成我的目标。
我们的应用程序带有嵌入式 Tomcat 和 JRE,我们也想嵌入 MySQL 数据库(不要问我们是否可以使用其他数据库引擎 - 它必须是 MySQL)。我找不到任何关于最佳方式的好的文档或答案,所以这里是我想出的想法:
- 只需启动可执行文件即可启动 mysqld 作为应用程序启动脚本的一部分
- 围绕 libmysqld 编写/使用 JNI 包装器在应用程序启动时启动服务器并在应用程序停止时停止它(这将是首选方法)
对于第二个(首选)选项,我认为围绕 libmysqld 调用编写 JNI 包装器不会太困难,但是我想知道这是否可行,因为 libmysqld only 提供访问在同一进程中运行的代码(无命名管道或 tcp 访问)。在正在运行的 java 应用程序中启动的进程是否允许父应用程序访问数据库?
【问题讨论】:
标签: java mysql web-applications java-native-interface