从scala中的BsonArray获取值
我很感兴趣的是如何使用mongodb scala驱动程序将值从BsonArray转换为Seq[String]。 我要走了从scala中的BsonArray获取值,scala,mongo-scala-driver,Scala,Mongo Scala Driver,我很感兴趣的是如何使用mongodb scala驱动程序将值从BsonArray转换为Seq[String]。 我要走了 value = Document((_id,BsonObjectId{value=5b112ca63b4dbed418a55eff}), (name,BsonString{value='test'}), (type,BsonString{value='test'}), (tags,BsonArray{values=[BsonString{value='test'}]}))
value = Document((_id,BsonObjectId{value=5b112ca63b4dbed418a55eff}), (name,BsonString{value='test'}), (type,BsonString{value='test'}), (tags,BsonArray{values=[BsonString{value='test'}]}))
来自mongodb。
我想得到Seq[String]的标签:
value.get[BsonArray](TagsKey).get.getValues.stream.map(tag => tag.asString().getValue).collect[List[String],AnyRef](Collectors.toList)
但是获取编译器错误
collect的类型参数太多
它也不起作用
我不明白为什么。是否有其他方法可以做到这一点?使用以下方法完成:
import scala.collection.JavaConverters._
value.get[BsonArray](TagsKey).get.getValues.asScala.map(tag => tag.asString().getValue)
import scala.collection.JavaConverters._
value.get[BsonArray](TagsKey).get.getValues.asScala.map(tag => tag.asString().getValue)