Ich versuche, ein einfaches envers Beispiel zu arbeiten. Ich habe den Java-Code funktioniert (anscheinend), und ich schließlich got the org.hibernate.tool.ant.EnversHibernateToolTask to work, aber es gibt nur SQL für die "regulären" Daten, nicht die Versionsdaten. Ich bin ratlos, was ich als nächstes tun soll.Schwierigkeiten, ein einfaches envers Beispiel zu arbeiten: Problem # 34
Was könnte ich vergessen zu gehören? Hier
ist die SQL es gibt: {Versionierung-ddl.sql}
create table Event (
id bigint generated by default as identity (start with 1),
date timestamp,
title varchar(255),
primary key (id)
);
create table Person (
id bigint generated by default as identity (start with 1),
age integer not null,
firstname varchar(255),
lastname varchar(255),
primary key (id)
);
create table PersonEvent (
eventID bigint not null,
personID bigint not null,
primary key (eventID, personID)
);
alter table PersonEvent
add constraint FK489E5C25F6E47374
foreign key (personID)
references Event;
alter table PersonEvent
add constraint FK489E5C25729F3820
foreign key (eventID)
references Person;
Ich habe keine Geschichte Tabellen/Felder sehen. Hier sind die entsprechenden Einträge in meiner hibernate.cfg.xml Datei:
<hibernate-configuration>
<session-factory>
...
<property name="hibernate.ejb.event.post-insert">org.hibernate.envers.event.AuditEventListener</property>
<property name="hibernate.ejb.event.post-update">org.hibernate.envers.event.AuditEventListener</property>
<property name="hibernate.ejb.event.post-delete">org.hibernate.envers.event.AuditEventListener</property>
<property name="hibernate.ejb.event.pre-collection-update">org.hibernate.envers.event.AuditEventListener</property>
<property name="hibernate.ejb.event.pre-collection-remove">org.hibernate.envers.event.AuditEventListener</property>
<property name="hibernate.ejb.event.post-collection-recreate">org.hibernate.envers.event.AuditEventListener</property>
<mapping class="com.example.test.hibernate.test1.Event"/>
<mapping class="com.example.test.hibernate.test1.Person"/>
</session-factory>
</hibernate-configuration>
und relevante Teile von Java-Klassen:
@Entity
@Audited
public class Event {
@Id
@GeneratedValue
private Long id;
private String title;
private Date date;
...
}
@Entity
@Audited
public class Person {
@Id
@GeneratedValue
private Long id;
private int age;
private String firstname;
private String lastname;
...
}
Welche Versionen von Hibernate und envers verwenden Sie? –