如何使用Casbah for MongoDb对域模型进行CRUD操作?

时间:2011-06-27 13:49:32

标签: scala mongodb casbah

Casbah有一个教程:

http://api.mongodb.org/scala/casbah/current/tutorial.html

但是我发现很难按照教程,因为我还在学习Scala。

我想知道如何使用Casbah开始简单的CRUD操作 在我能够更先进之前。

鉴于以下域名模型:

class Hotel (var name: String, var stars: Int, val address:  Address)

class Address(var street:String, var city: String, var postCode: String)



val address = new Address(street = "1234 st", city = "edmond", postCode = "1232234", country = "USA" )


  val hotel = new Hotel(name = "Super Nice", stars = 4, address =  address)

val address2 = new Address(street = "main st", city = "edmond", postCode = "1232234", country = "USA" )

val hotel2 = new Hotel(name = "Big Hotel", stars = 4, address =  address2)

鉴于上面的Casbah代码是什么来实现这些任务?

(1)保存mongodb的两家酒店

(2)找到所有星级等于4或大于4的酒店。这应该给我   我可以迭代的列表

(3)找到一家名为“Super Nice”的酒店,并将其名称改为“Ultra Nice”

(4)获取所有酒店的地址并将国家/地区更改为小写并保存在数据库中

1 个答案:

答案 0 :(得分:0)

您可以在此处查看如何插入数据:Casbah wiki

如果你想在MongoDB中直接保存案例类(不需要MongoDBObject),你应该看看Salat和SalatDao:Salat presentation

在我看来,问题(2) - (4)的答案可以在casbah和salat的文档中轻松找到。