背景:
我的REST服务项目是通过使用Hibernate启动的。我在域类中使用id(Long)作为rest url中标识符的一部分,例如:
http://abc.com/customer-50,其中50是Long id。
Hibernate Annotated类如下:
public class Customer {
@Id
@GeneratedValue
private Long id;
}
现在我需要将我们的设计迁移到Mongodb。自然的选择是使用Morphia,这是一个实体框架。
问题:在Morphia中,id字段是ObjectId
@Id private ObjectId id;
这将导致问题,因为:1。它不是自动增量,即http://abc.com/customer-50,http://abc.com/customer-51,http://abc.com/customer-52。
现在它变成了http://abc.com/customer-4d1b4687a6d5437619000000
谢谢!
看一眼 https://code.google.com/p/morphia/source/browse/trunk/morphia/src/main/java/com/google/code/morphia/utils/LongIdEntity.java https://github.com/mongodb/morphia/blob/master/morphia/src/test/java/org/mongodb/morphia/utils/LongIdEntity.java(链接更新) https://github.com/MorphiaOrg/morphia/blob/master/morphia/src/test/java/xyz/morphia/utils/LongIdEntity.java(再次更新)