【问题标题】:hibernate enverse : how to get changed value in relation fieldhibernate envers:如何在关系字段中获取更改的值
【发布时间】:2018-01-04 11:56:23
【问题描述】:

我正在使用带有 postgres 数据库的 hibernate enverse 5.2.10.Final。

AuditReader auditReader = AuditReaderFactory.get(entityManager);
        String newValue = (String) auditReader.createQuery()
                .forEntitiesAtRevision(Vehicle.class, 2203869)
                .traverseRelation("vehicleType", JoinType.INNER).addProjection(AuditEntity.property("id")).up()
                .add(AuditEntity.property("vehicleType").hasChanged())              
                .add(AuditEntity.id().eq(2203422l))
                .add(AuditEntity.revisionNumber().eq(2203869)).getSingleResult();

vehicle 表与vehicleType 是多对一的关系。 如何使用逆向查询获取车辆实体的车辆类型属性的变化。 在这里我没有找到结果错误。 无法通过 Audientity.property("vehicleType")..hasChanged() 获得价值 他们的错误属性未找到。

【问题讨论】:

    标签: postgresql hibernate spring-boot hibernate-envers


    【解决方案1】:
    auditReader.createQuery()
      .forEntitiesAtRevision( Vehicle.class, revisionNumber )                                           
      .traverseRelation( propertyname, JoinType.LEFT )
      .addProjection( AuditEntity.property("id") ).up()
      .add( AuditEntity.property( propertyname ).hasChanged() )
      .add( AuditEntity.id().eq( VehicleId ) )                                  
      .getSingleResult()
    

    【讨论】:

      猜你喜欢
      • 2012-12-17
      • 2017-09-14
      • 2014-03-31
      • 2011-03-16
      • 2015-02-06
      • 2018-12-01
      • 1970-01-01
      • 1970-01-01
      • 2012-09-29
      相关资源
      最近更新 更多