【问题标题】:Is there a way to maintain an order column using jpa hibernate?有没有办法使用 jpa hibernate 维护订单列?
【发布时间】:2021-12-02 04:41:06
【问题描述】:

我正在尝试创建一个带有“顺序”列的表格,以允许重新排列数据的顺序。这可能使用jpa吗?可能类似于@OrderColumn 但在桌子上。

基本上我想添加一个名为“order”的新列,用于保存记录的顺序。如果添加了一条记录,它将自动获得一个“订单”值。如果一条记录被删除,剩余的“顺序”将自动更新。此外,如果可能的话,通过将一条记录移动到较低的“订单”来重新排列订单,它会推动其他记录

【问题讨论】:

标签: java spring postgresql hibernate jpa


【解决方案1】:

没有开箱即用的方法,但您可以根据需要自行实现。只需在持久化之前查询对象的数量,并将 count + 1 设置为该订单列的值。确保 order 列被声明为唯一的,即具有唯一约束。

请注意,您的要求非常奇特,如果您具有高并发性,可能需要某种表锁定或重试机制。

IMO,您应该询问向您提出此要求的人应该实现的目标是什么。我打赌你会发现你根本不需要这个。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-07-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-25
    相关资源
    最近更新 更多