我有一个 MongoDB 数据库,它代表公共基因信息的片段,如下所示:
{
_id: 1,
symbol: "GENEA",
db_references: {
"DB A": "DBA000123",
"DB B" ["ABC123", "DEF456"]
}
}
我正在尝试将其映射到带注释的@Document
POJO 类,如下所示:
@Document
Public class Gene {
@Id
private int id;
private String symbol;
private Map<String,Object> db_references;
//getters and setters
}
由于 MongoDB 的无模式设计的性质,该db_references
字段可以包含一长串可能的键,值有时是数组或其他键值对。我主要关心的是获取多个Gene
文档并将它们的db_references
.
我的问题:表示该字段以优化获取性能的最佳方式是什么?我应该定义一个自定义 POJO 并将这个字段映射到它吗?我应该把它做成一个BasicDBObject
吗?或者最好不要使用 Spring Data 映射文档,而只使用 MongoDB Java 驱动程序并解析返回的 DBObjects?