使用 AuditQuery 获取关联实体
Fetching associated entities with AuditQuery
例如我有两个实体:
@Entity
@Audited
@Table(....
public class Worker
{
private Long id;
private String name ;
}
@Entity
@Audited
@Table(....
public class Department
{
private Long id;
private String departmentName;
private Worker worker;
}
我想显示 Department
的以下数据:
| departmentName
| name
(来自获取的实体worker
)|
当使用 AuditQuery
获取实体 Department
的审核信息时,是否可以获取实体 Worker
以显示 name
值以提高人类可读性?
不支持此功能,因此您必须使用本机查询并连接实际的数据库表。
EAGER
envers不支持加载,所有关联只能懒加载。手动连接的另一种解决方案是初始化实体的惰性字段。
我对这个问题的解决方案是使用 java 反射遍历所有字段(see), finding proxies by using Hibernate.isInitialized(...) and initializing them with Hibernate.initialize(...)。
例如我有两个实体:
@Entity
@Audited
@Table(....
public class Worker
{
private Long id;
private String name ;
}
@Entity
@Audited
@Table(....
public class Department
{
private Long id;
private String departmentName;
private Worker worker;
}
我想显示 Department
的以下数据:
| departmentName
| name
(来自获取的实体worker
)|
当使用 AuditQuery
获取实体 Department
的审核信息时,是否可以获取实体 Worker
以显示 name
值以提高人类可读性?
不支持此功能,因此您必须使用本机查询并连接实际的数据库表。
EAGER
envers不支持加载,所有关联只能懒加载。手动连接的另一种解决方案是初始化实体的惰性字段。
我对这个问题的解决方案是使用 java 反射遍历所有字段(see), finding proxies by using Hibernate.isInitialized(...) and initializing them with Hibernate.initialize(...)。