代码之家  ›  专栏  ›  技术社区  ›  Javi

在历史表的一列中获取更改

  •  0
  • Javi  · 技术社区  · 15 年前

    @Entity
    @Table(name="items_historical")
    public class ItemHistory{
        private Integer id;
    
        private Date date;
    
        @Enumerated(EnumType.ORDINAL)
        private StatusEnum status
    
        @ManyToOne(optional=false)
        private User user;
    
        @ManyToOne(optional=false)
        private Item item;
    }
    
    public enum StatusEnum {
    OK, BAD,...//my status
    }
    

    我在每一行存储另一个表的历史数据。我需要得到“状态”列上的更改列表:状态、日期和指定项的上一个状态(最好得到状态更改时的状态和日期)。我不知道使用HQL是否可以做到这一点。

    谢谢。

    1 回复  |  直到 15 年前
        1
  •  2
  •   Bozhidar Batsov    15 年前

    你为什么不使用这样的解决方案 Hibernate Envers (以前称为JBoss Envers)而不是设计自定义解决方案?我想你会发现Envers的特征非常引人注目。