Java 将HQL休眠为SQL

Java 将HQL休眠为SQL,java,sql,hibernate,hql,Java,Sql,Hibernate,Hql,给定以下实体一对多模型: 一个存储库可以链接到多个AuditRecords 许多AuditRecords都可以链接到同一存储库 @Entity class AuditRecordEntity { private AuditRepositoryEntity auditRepository; @ManyToOne(cascade = CascadeType.ALL) @JoinColumn(name = AUDIT_REPOSITORY_DB_COLUMN_NAME, nullab

给定以下实体一对多模型:

一个存储库可以链接到多个AuditRecords

许多AuditRecords都可以链接到同一存储库

@Entity
class AuditRecordEntity {
  private AuditRepositoryEntity auditRepository;  

  @ManyToOne(cascade = CascadeType.ALL)
  @JoinColumn(name = AUDIT_REPOSITORY_DB_COLUMN_NAME, nullable = false, updatable = false)
  public AuditRepositoryEntity getAuditRepository() {
    return auditRepository;
  }
  ...
}

@Entity
class AuditRepositoryEntity {
  private List<AuditRecordEntity> auditRecords = new ArrayList<AuditRecordEntity>();

  @OneToMany(mappedBy = "auditRepository")
  public List<AuditRecordEntity> getAuditRecords() {
    return auditRecords;
  }
  ...
}
我想知道上述HQL的等效SQL


(原因是我喜欢使用criteria API将查询添加为sql限制,因为我在将上面的HQL转换为使用criteria API时遇到问题-请参见)

有一个hibernate属性,名为

hibernate.show_sql
您可以在hibernate配置文件或属性文件中将其设置为true。它将显示hql/条件查询的等效sql查询

hibernate.show_sql