每次我创建新技能、新员工或新合同时,都不会将任何内容保存到数据库中。当我从intellij重新运行应用程序,然后转到localhost的浏览器时,我以前在上一个会话中创建的所有数据都不在了。如何持久化在optaplanner中创建的新数据,以便在重新运行应用程序时,它出现在ui上?
webghufk1#
我正在使用 solveAndListen 在 solverManager 这个叫 save() 当它的分数提高时。你需要把解决方案/结果保存在这里。我正在用hibernate来做这件事。我只是更新数据库中的最新解决方案,而不是存储它的新版本,但这取决于您。只要做好准备,在执行的早期可能会有很多调用需要保存。我已经创建了一个额外的api来重置解算器,以便可以重新运行它。
solveAndListen
solverManager
save()
yiytaume2#
假设这是关于optaweb员工名册:development application.properties正在使用内存中的数据库,该数据库在每次运行后都会被删除。但是生产应用程序属性使用postgresql(您可以将其切换到首选数据库)。openshift(=kubernetes)支持设置optaweb员工名册和postgresql pods iirc。要使用它,快跑 runOnOpenshift.sh 就在这里。
runOnOpenshift.sh
2条答案
按热度按时间webghufk1#
我正在使用
solveAndListen
在solverManager
这个叫save()
当它的分数提高时。你需要把解决方案/结果保存在这里。我正在用hibernate来做这件事。我只是更新数据库中的最新解决方案,而不是存储它的新版本,但这取决于您。只要做好准备,在执行的早期可能会有很多调用需要保存。我已经创建了一个额外的api来重置解算器,以便可以重新运行它。yiytaume2#
假设这是关于optaweb员工名册:
development application.properties正在使用内存中的数据库,该数据库在每次运行后都会被删除。
但是生产应用程序属性使用postgresql(您可以将其切换到首选数据库)。
openshift(=kubernetes)支持设置optaweb员工名册和postgresql pods iirc。要使用它,快跑
runOnOpenshift.sh
就在这里。