Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何使用Vaadin和Hibernate Envers_Java_Hibernate_Vaadin_Hibernate Envers - Fatal编程技术网

Java 如何使用Vaadin和Hibernate Envers

Java 如何使用Vaadin和Hibernate Envers,java,hibernate,vaadin,hibernate-envers,Java,Hibernate,Vaadin,Hibernate Envers,我不知道如何使用Hibernate Envers和Vaadin。我有一个vaadin web应用程序,它有用户可以编辑的信息表。我使用postgresql存储数据,并使用Hibernate创建Bean类(我有多个Bean类和多个SQL表)并链接到DB。我试图弄清楚如何使用Envers来跟踪用户对表的修改(如果他们添加、删除或编辑了某些内容,以及用户的用户名和修改发生的时间)。这是我的hibernate.cfg.xml文件: <?xml version="1.0" encoding="UTF

我不知道如何使用Hibernate Envers和Vaadin。我有一个vaadin web应用程序,它有用户可以编辑的信息表。我使用postgresql存储数据,并使用Hibernate创建Bean类(我有多个Bean类和多个SQL表)并链接到DB。我试图弄清楚如何使用Envers来跟踪用户对表的修改(如果他们添加、删除或编辑了某些内容,以及用户的用户名和修改发生的时间)。这是我的hibernate.cfg.xml文件:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
                                         "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
 <session-factory name="">
  <property name="hibernate.connection.driver_class">org.postgresql.Driver</property>
    <property name="hibernate.connection.password">password</property>
    <property name="hibernate.connection.url">jdbc:postgresql://localhost:5432/appdb</property>
    <property name="hibernate.connection.username">postgres</property>
    <property name="hibernate.dialect">org.hibernate.dialect.PostgreSQLDialect</property>
    <property name="hibernate.current_session_context_class">thread</property>


    <mapping
        resource="com/webapp/ui/database/Person.hbm.xml" />
    <mapping
        resource="com/webapp/ui/database/Occupation.hbm.xml" />
    <mapping
        resource="com/webapp/ui/database/Address.hbm.xml" />
    <mapping
        resource="com/webapp/ui/database/Car.hbm.xml" />
    <mapping
        resource="com/webapp/ui/database/Education.hbm.xml" />

<listener class="org.hibernate.envers.event.AuditEventListener" type="post-insert"/>
<listener class="org.hibernate.envers.event.AuditEventListener" type="post-update"/>
<listener class="org.hibernate.envers.event.AuditEventListener" type="post-delete"/>
<listener class="org.hibernate.envers.event.AuditEventListener" type="pre-collection-update"/>
<listener class="org.hibernate.envers.event.AuditEventListener" type="pre-collection-remove"/>
<listener class="org.hibernate.envers.event.AuditEventListener" type="post-collection-recreate"/>   
 </session-factory>
</hibernate-configuration>

org.postgresql.Driver
密码
jdbc:postgresql://localhost:5432/appdb
博士后
org.hibernate.dialogue.PostgreSqlDialogue
线

我还将@Audited添加到Bean类中。执行此操作后,审核表似乎不起作用。

您可以发布persistence.xml吗?@luuksen我没有,我让hibernate自动创建所有内容。