我使用Java 8流代替许多旧样式for循环来迭代一堆结果并生成摘要统计信息.例如:
int messages = IntStream.rangeClosed(0, 7).map(ids::get).reduce(Integer::sum).getAsInt();
Run Code Online (Sandbox Code Playgroud)
注意:我知道还有其他方法可以进行上面显示的计数.我这样做是为了说明我的问题.
我正在使用SonarQube 5.3和Java 3.9插件.在该配置中,上面的代码行违反了squid规则S2095:"资源应该被关闭".这是我期望看到AutoCloseable(例如,FileInputStream)被打开但从未关闭的结果.
所以这是我的问题:终端操作是否reduce关闭流?应该是?或者这是鱿鱼规则中的假阳性?
我们正式支持 Quartz 和 MongoDB 吗?我看到有一个库https://github.com/michaelklishin/quartz-mongodb。但它被提及是因为它不再被维护。在这个阶段,我们的应用程序正在使用 MongoDB,仅适用于 Quartz,不想在我们的项目中添加另一个数据库(MySQL)。请建议是否建议使用两个数据库或者 Quartz 是否支持 MongoDB。
我知道这是征求建议/意见。任何投入都会对我们有很大帮助。
先感谢您!