【发布时间】:2009-09-09 15:21:06
【问题描述】:
基本上,我想要一种以与数据库无关的方式访问序列值的方法。 用例是我在实体上有一个字段,我想根据递增值(而不是 id)设置该字段。
例如,假设我有一个Shipment 实体。在货件创建后的某个时间点,它会被发货。一旦发货,就会为其生成并分配一个清单编号。清单编号类似于 M000009 (“M”之后的内容是序列中的左填充值)。
有人问过类似的问题 here at SO ,但我不喜欢这个解决方案,因为它需要另一个表来维护,而且似乎是一种奇怪的关系。
有谁知道是否可以使用 hibernate 的MultipleHiLoPerTableGenerator 之类的东西而不是 ID 生成器?
如果这不可能,有谁知道处理这个问题的任何库(使用休眠甚至只是纯 JDBC)。我不想自己写这个(并且必须处理预取值、锁定和同步)。
谢谢。
【问题讨论】:
标签: java hibernate jpa jdbc sequence