在DataNucleus中使用MongoDB“_id”字段作为主键
在过去主要使用Hibernate进行开发之后,我对MongoDB和JDO是新手。我试图持久化一个简单对象,并利用从MongoDB生成的_id作为持久化对象的主键。不幸的是,看起来DataNucleus正在生成一个标识字段,而Mongo在持久化文档中生成了一个_id字段。因此,每个对象都使用两个唯一标识符进行持久化。如何强制DataNucleus仅使用生成的Mongo ObjectId?我的课程如下在DataNucleus中使用MongoDB“_id”字段作为主键,mongodb,jdo,datanucleus,Mongodb,Jdo,Datanucleus,在过去主要使用Hibernate进行开发之后,我对MongoDB和JDO是新手。我试图持久化一个简单对象,并利用从MongoDB生成的_id作为持久化对象的主键。不幸的是,看起来DataNucleus正在生成一个标识字段,而Mongo在持久化文档中生成了一个_id字段。因此,每个对象都使用两个唯一标识符进行持久化。如何强制DataNucleus仅使用生成的Mongo ObjectId?我的课程如下 @PersistentCapable(identityType=IdentityType.DATA
@PersistentCapable(identityType=IdentityType.DATASTORE)
public class HistoricalPrice {
private String ticker;
private Date day;
private double open;
private double close;
private double high;
private double low;
private long volume;
public HistoricalPrice(String ticker, Date day, double open, double close, double high, double low, long volume) {
super();
this.ticker = ticker;
this.day = day;
this.open = open;
this.close = close;
this.high = high;
this.low = low;
this.volume = volume;
}
将数据存储标识策略定义为identity,而不是默认的NATIVE
@DatastoreIdentity(strategy=IdGeneratorStrategy.IDENTITY)
i、 e与RDBMS上使用某种内置机制所需的一致