Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java MongoiDB使用字符串作为_id_Java_Mongodb_Scala_Casbah - Fatal编程技术网

Java MongoiDB使用字符串作为_id

Java MongoiDB使用字符串作为_id,java,mongodb,scala,casbah,Java,Mongodb,Scala,Casbah,我希望每个集合使用一个唯一的字符串来标识文档。我正在使用Scala和Casbah,但如果需要,也可以使用Java 我知道我应该使用Casbahcollection.createIndex,但我不理解scaladocs 如果我的案例类别是: case class GroupParams ( _id: String, //groupId: String, testPeriodStart: DateTime, // ISO8601 date variants: Seq[String],

我希望每个集合使用一个唯一的字符串来标识文档。我正在使用Scala和Casbah,但如果需要,也可以使用Java

我知道我应该使用Casbah
collection.createIndex
,但我不理解scaladocs

如果我的案例类别是:

case class GroupParams (
  _id: String,
  //groupId: String,
  testPeriodStart: DateTime, // ISO8601 date
  variants: Seq[String], //["17","18"]
  testPeriodEnd: Option[DateTime])
我将始终使用_id引用特定文档(无需
_id:ObjectId

我不关心排序/排序,因为它们只能作为单独的文档访问,而不会被浏览。似乎没有理由在默认的
\u id:ObjectId
上增加另一个索引的开销


如何使用Casbah在具有
\u id:String
的集合上创建索引?如果我要创建一个新索引,而不使用默认值,您可以演示如何执行此操作吗?

Mongo自动为所有类型(ObjectId、String或任何您想要的类型)的id字段创建索引-

Mongo自动为集合中的索引生成一个
\u id

如果要将
String
插入
\u id
,可以将字符串转换为
objectId
,如下所示:
objectId.Parse(myString))

更多信息请参见