【问题标题】:Unable to change revinfo table name in Hibernate Envers无法在 Hibernate Envers 中更改 revinfo 表名
【发布时间】:2017-02-24 08:35:29
【问题描述】:

我去了文档(http://docs.jboss.org/envers/docs/#revisionlog),上面写着如果我们用@RevisionEntity 注释一个实体,那么Hibernate 将不会自己创建默认的revinfo 表,而是会映射用@RevisionEntity 注释的实体。我仍然尝试创建名为 revinfo 的默认表,而不是自定义命名表为 RevisionTable。 以下是代码:


import javax.persistence.GeneratedValue;
import javax.persistence.Id;

import org.hibernate.envers.RevisionEntity;
import org.hibernate.envers.RevisionNumber;
import org.hibernate.envers.RevisionTimestamp;


@RevisionEntity

public class RevisionTable   {


@Id
@GeneratedValue
@RevisionNumber
private int id;

@RevisionTimestamp
private long timestamp;

public int getId() {
    return id;
}

public void setId(int id) {
    this.id = id;
}

public long getTimestamp() {
    return timestamp;
}

public void setTimestamp(long timestamp) {
    this.timestamp = timestamp;
}


}

我不明白我哪里出错了。由于我是 Hibernate Envers 的新手,如果详细解释解决方案将会很有帮助。

【问题讨论】:

    标签: java hibernate-envers


    【解决方案1】:

    您的修订实体还需要包含这些注释:

    @Entity
    @Table(name="REVISIONS_TABLE_NAME")
    

    它需要像任何其他实体一样被休眠扫描。请参阅文档,这是在那里指定的:http://docs.jboss.org/envers/docs/

    【讨论】:

      猜你喜欢
      • 2014-07-03
      • 2015-05-05
      • 2014-12-01
      • 2016-02-03
      • 2021-07-17
      • 1970-01-01
      • 2020-03-11
      • 1970-01-01
      • 2015-12-08
      相关资源
      最近更新 更多