用scala从mongo中加载数据保存成case class,其中case class的定义如下:case class News(_id:ObjectId, title: String)
时间: 2023-03-25 09:00:31 浏览: 100
可以使用MongoDB Scala驱动程序来从MongoDB中加载数据并将其保存为case class。首先,需要导入MongoDB Scala驱动程序的依赖:
```scala
libraryDependencies += "org.mongodb.scala" %% "mongo-scala-driver" % "4.3."
```
然后,可以使用以下代码从MongoDB中加载数据并将其保存为case class:
```scala
import org.mongodb.scala._
import org.mongodb.scala.bson.ObjectId
case class News(_id: ObjectId, title: String)
val mongoClient: MongoClient = MongoClient()
val database: MongoDatabase = mongoClient.getDatabase("mydb")
val collection: MongoCollection[Document] = database.getCollection("news")
val newsList: Seq[News] = collection.find().map(doc => News(doc.getObjectId("_id"), doc.getString("title"))).toSeq
```
在上面的代码中,首先创建了一个MongoClient对象,然后获取了一个MongoDatabase对象和一个MongoCollection对象。然后,使用MongoDB Scala驱动程序提供的find()方法从MongoDB中获取所有文档,并使用map()方法将每个文档转换为case class News的实例。最后,使用toSeq()方法将结果转换为一个Seq[News]对象。
阅读全文