在casbah教程(http://mongodb.github.com/casbah/tutorial.html)中找不到任何有关如何在mongodb中编写/更新/删除对象的说明。请提供示例帮助或告诉要查找这些方法的类。
谢谢!
最佳答案
更新的答案
在这个问题被提出和回答几个月后,casbah文档被更新为包含Doing CRUD operations部分。也许这个问题/答案有助于实现这一点。或者有人意识到没有在数据库教程中记录crud操作是cray-cray。
原始答案
为了理解为什么cashbah教程没有提供如何从mongodb数据库插入、更新或删除文档的示例,可以从casbah文档的第一段开始:
CASBAH是MangGDB的Scala工具包,我们使用术语“工具箱”而不是“驱动程序”,因为CASBAH在官方Mango Java驱动程序的顶部集成了一层以更好地与斯卡拉集成。这与MungDeWire协议的原生实现相反,Java驱动程序的性能非常好。CasBah使用的是一个完整的重写,而不是一个完整的重写,而PIMP我的库代码来增强现有的Java代码。
CASBAH是一个增强Java驱动程序的工具包。因此,必须首先读取Java驱动程序文档,然后阅读CASBAH文档,以便有效地使用CASBAH。
为了进一步激励这个建议,看看CASBAH如何从Java驱动程序中封装一些方法:
trait MongoCollectionBase extends Logging { self =>
...
val underlying: DBCollection
...
def save[A <% DBObject](jo: A) = underlying.save(jo)
...
def update[A <% DBObject, B <% DBObject](q: A, o: B) = underlying.update(q, o)
...
def remove[A <% DBObject](o: A) = underlying.remove(o)
...
正如上面的摘录所演示的,Casbh的
MongoCollection
是Java驱动程序DBCollection
的代理。这意味着如果CASBAH工具包不处理某些事情,则通过调用Java驱动程序来处理。下面是如何使用Java驱动程序从MangGDB数据库插入、更新和删除文档的示例的链接:
如何在数据库中插入和更新文档被记录在案;
有关如何删除文档的示例here。
将这些实例移植到使用CASBAH应该是简单的,因为您了解CASBAH是如何与Java驱动程序相关的。