Java Hibernate使用开始索引1而不是0持久化列表
我们使用Hibernate保存一个实体列表,使用Java Hibernate使用开始索引1而不是0持久化列表,java,hibernate,Java,Hibernate,我们使用Hibernate保存一个实体列表,使用OrderColumn来维护它们的顺序 class MyObject { ... @OneToMany(mappedBy = "myobject", cascade = {CascadeType.PERSIST, CascadeType.DETACH, CascadeType.MERGE, CascadeType.REFRESH}) @OrderColumn(name = "index_number") private
OrderColumn
来维护它们的顺序
class MyObject {
...
@OneToMany(mappedBy = "myobject", cascade = {CascadeType.PERSIST, CascadeType.DETACH, CascadeType.MERGE, CascadeType.REFRESH})
@OrderColumn(name = "index_number")
private List<sampleElement> sampleElement;
}
类MyObject{
...
@OneToMany(mappedBy=“myobject”,cascade={CascadeType.PERSIST,CascadeType.DETACH,CascadeType.MERGE,CascadeType.REFRESH})
@OrderColumn(name=“index\u number”)
私有列表样本元素;
}
保存元素列表时,索引编号
以1
开头,而文档建议它应该从0
开始。这也会导致读取时出现问题,因为读取列表在位置0
处包含null
元素
我们已经环顾了很多地方,有些不知所措。有什么建议吗?可以使用自定义 定义存储在数据库中的列表索引的起始索引值。从读取时的传入数据库值中减去该基数,以确定列表位置;写入数据库时,会将其添加到列表位置索引中。默认情况下,列表索引从零开始存储
@OneToMany(mappedBy=“myobject”,cascade={CascadeType.PERSIST,CascadeType.DETACH,CascadeType.MERGE,CascadeType.REFRESH})
@OrderColumn(name=“index\u number”)
@ListIndexBase(1)
私有列表样本元素;
另请参见hibernate文档的第1部分