我正在研究使用MongoDB解析.txt文件的小型Java程序,并很好地显示信息以供分析。到目前为止,我必须在Windows上打开cmd并运行“mongod”行来启动数据库(我在Windows环境变量中设置了Mongo,因此我不必路径到MongoDB安装路径)。然后我可以运行Java程序。要停止mongod,我可以关闭我启动它的cmd窗口,也可以打开另一个cmd窗口并发出以下一系列命令:“mongo”,“use admin”,“db.shutdownServer()”。从Java应用程序中启动mongodb
我希望能够在我的Java程序中自动初始化和终止mongod,这样当我打开程序的jar时,服务器将自动启动,然后在程序关闭时停止。我知道我需要插入将执行这些命令的代码,但我不知道如何对它们进行编码。
到目前为止,这是我发现:
涉及 “调用Runtime.getRuntime()EXEC(” “)建议;” - 这对第一个命令“mongod”起作用,我也相信“mongo”,但不适用于“使用管理员”。我猜这是由于命令是单独发布的(虽然“mongo”“use admin”和“db.shutdownServer()需要一起发布,或者由于行中的空格为”use admin“)。我也读过这种方法很粗糙,不应该使用
涉及“ProcessBuilder”的建议 - 我不太了解这种方法,并且我没有提到我为这种方法遇到的所有建议有空格的命令,这样的东西,将需要揣摩,以及如果这样的做法是采取。
还有没有其他的办法,否则我怎么能实现这两个中的一个?
查找到过程和进程生成器 – efekctive