2013-02-02 65 views
0

我有一个组合对象,我希望在mongodb中存储(使用spring注释)。目的是如下:在春天mongodb索引复合对象

@Document(collection="person") 
class Person { 

@Id 
private String id; 

private Address address; 

private String name; 

} 

和复合类地址:

@Document 
class Address { 

@Indexed 
private Long countryId; 

private String street; 

@Indexed 
private String city 
} 

我既需要国家和城市要索引的人集合的一部分。唉,没有索引是为他们创造的。任何想法如何创建索引?

我已经试过这工作,但不是优雅如下:

@Document(collection="person") 
@CompoundIndexes({ 
    @CompoundIndex(name = "countryId", def = "{'address.countryId': 1}") 
}) 
class Person { 

回答

1

您可以设置多个secondary indexes,如果你想。这将是一个开始的好地方。

+1

谢谢。但这不是很有帮助。首先,所有指标在mongodb中都是次要的。其次,我正在寻找一个java/spring解决方案。 – checklist