我想在Play Framework 2项目中使用MongoDB异步Java驱动程序,MongoDB异步Java驱动程序return SingleResponseCallback。我不知道如何在播放控制器中处理这种结果。
例如,如何从播放控制器中的以下代码返回计数:
collection.count(
new SingleResultCallback<Long>() {
@Override
public void onResult(final Long count, final Throwable t) {
System.out.println(count);
}
});
如何从SingleResultCallback获得结果,然后将其转换为Promise?这样好吗?这种情况下的最佳实践是什么?
你得自己解决诺言。记住Play Promissions是scala未来的包装,解决未来的唯一方法是使用scala Promissions(不同于Play Promissions)(我知道,这有点让人困惑)。你必须这样做:
Promise<Long> promise = Promise$.MODULE$.apply();
collection.count(
new SingleResultCallback<Long>() {
@Override
public void onResult(final Long count, final Throwable t) {
promise.success(count);
}
});
return F.Promise.wrap(promise.future());
promise$.module$.apply()
只是从Java访问scala对象的方法。
问题内容: 我打算使用Datastax Java驱动程序来编写Cassandra。.我主要对Datastax Java驱动程序及其功能感兴趣,但是我无法获得任何教程来解释如何将这些功能合并到下面的使用Datastax的代码中Java驱动程序 在下面的代码中,我正在使用Datastax Java驱动程序创建与Cassandra节点的连接。 有人可以帮助我如何在上述代码中添加批处理写入或异步功能..谢
请帮我找到一个合适的解决办法 收集被存储的用户详细信息app_users 用户预订是存储预订的集合 我正在使用的查找(左连接)查询是 我想从用户集合中选择具有相应用户详细信息的预订,但返回为空,因为mongodb正在将字符串与objectId进行比较,所以是否有方法执行此任务?
问题内容: 我有一个使用mongodb本机驱动程序的node.js应用程序。在使用节点v8.9.1将应用程序代码迁移到异步/等待的过程中,我努力寻找一种适合mongodb查询的好方法。mongodb驱动程序的主要问题是,所有查询都使用回调,其中对异步方法来说,promise函数是必需的。 备择方案: 猫鼬 -承诺不赞成使用查询,它会强制使用Schema模型,这对我的应用程序来说有点开销。 mong
问题内容: 我正在尝试通过搜索“ _id”键在MongoDB中查找文档。我的文件看起来像这样- 我正在尝试将此文档搜索为- 但我得到以下错误- BasicDBObject的append方法支持(字符串键,值),如果我将“ _id”作为String传递给此方法,则不会匹配任何文档。 所以我的问题是如何传递“ _id”? 问题答案: 通过使用as作为查询来解决
我使用下面的mongo查询来获取最高温度。有人能帮助我们如何使用mongo java驱动程序,使用和在java中实现吗?
问题内容: 我们如何在Java中进行编码以找出安装了操作系统的驱动器号? 问题答案: 您可以从环境中获得: