Java MongoDB生成的值以1开头
我有一个用Java MongoDB生成的值以1开头,java,mongodb,spring-data-mongodb,Java,Mongodb,Spring Data Mongodb,我有一个用@Id和@GeneratedValue注释的Java类,如下所示: import org.springframework.data.annotation.Id; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; @Entity public class Test { @Id @GeneratedV
@Id
和@GeneratedValue
注释的Java类,如下所示:
import org.springframework.data.annotation.Id;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
@Entity
public class Test {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
public long id;
...
}
关键是,每当我创建一个测试实例时,它都会生成一个初始Id为0
的MongoDB文档,但我希望它以1
开头(因为这将在我的WebService URL中用作Id)
这可能吗?但这会使每个新对象都具有
id=1
,而不是递增地添加它。它将默认值设为0。首先将值赋值为1,然后递增它,但我需要在应用程序级别对其进行控制,但我宁愿将其委托给MongoDB本身(正如我的问题所述)。@Vijay您被否决了,因为您的答案似乎强制构造每个类型测试的实体id=1。。。但我想知道这是否真的被Mongo db注释稍后覆盖,从而导致请求的确切行为?这是一个有效的破解,还是一个错误的答案?有人测试过这个吗?
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
public int id=1;