首页 文章

为什么Hibernate Envers没有启动更新?

提问于
浏览
0

我正在使用Hibernate Envers审核我的表的日志,并使用Spring配置它 . 但是,在执行更新,修改或删除操作时,不会进行审核 . 以下是配置 .

spring 配置

<property name="hibernateProperties">
            <props>
                <prop key="hibernate.dialect">org.hibernate.dialect.Oracle10gDialect</prop>
                <prop key="hibernate.show_sql">true</prop>
                <prop key="hibernate.bytecode.use_reflection_optimizer">true</prop>
                <prop key="hibernate.order_updates">true</prop>
                <prop key="hibernate.cache.use_second_level_cache">false</prop>
                <prop key="hibernate.query.substitutions">true 'Y', false 'N'</prop>

            <prop key="hibernate.connection.SetBigStringTryClob">true</prop>
            <prop key="hibernate.jdbc.use_streams_for_binary">true</prop>
            <prop key="SetBigStringTryClob">true</prop>

            <!--envers config-->
            <prop key="org.hibernate.envers.audit_table_suffix">_AUDITING</prop>
            <prop key="org.hibernate.envers.revision_field_name">revision_id</prop>
            <prop key="org.hibernate.envers.revision_type_field_name">revision_type</prop>

            <!--envers listners-->
            <prop key="hibernate.ejb.event.post-insert">org.hibernate.ejb.event.EJB3PostInsertEventListener,org.hibernate.envers.event.AuditEventListener</prop>
            <prop key="hibernate.ejb.event.post-update">org.hibernate.ejb.event.EJB3PostUpdateEventListener,org.hibernate.envers.event.AuditEventListener</prop>
            <prop key="hibernate.ejb.event.post-delete">org.hibernate.ejb.event.EJB3PostDeleteEventListener,org.hibernate.envers.event.AuditEventListener</prop>
            <prop key="hibernate.ejb.event.pre-collection-update">org.hibernate.envers.event.AuditEventListener</prop>
            <prop key="hibernate.ejb.event.pre-collection-remove">org.hibernate.envers.event.AuditEventListener</prop>
            <prop key="hibernate.ejb.event.post-collection-recreate">org.hibernate.envers.event.AuditEventListener</prop>

        </props>
    </property>

我已将@Audited注释添加到实体类中 . 我正在使用Hibernate核心3.5.0-Final和相同版本的envers .

当我检查hibernate记录的sqls时,我可以看到更新查询已执行但没有任何查询将数据插入审计表 . 这有什么不对?

1 回答

  • 0

    将org.springframework.orm.hibernate3.LocalSessionFactoryBean更改为org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean时问题已解决

相关问题