我正在使用 spring-data 进行数据库交互。我想查看存储库中写入的查询的 jpa sql 执行计划。我该怎么办。
https://vladmihalcea.com/execution-plan-oracle-hibernate-query-hints/ 讲述如何使用 GATHER_PLAN_STATISTICS 和 COMMENT 查询提示。我添加了 COMMENT 提示,但不知道如何添加其他提示。
public interface StudentRepository extends JpaRepository<Student, Long>{
@QueryHints({
@QueryHint(name=org.hibernate.annotation.queryHints.COMMENT,
value="SQL_PLAN_STUDENT")
})
List<Student>findByStudentIDIn(List<Long> ids);
}
@QueryHints
注释接受数组构造函数,例如@QueryHint
项目列表。
因此,您可以通过将多个
QueryHints
添加到逗号分隔的列表中来添加它们。例如:
@QueryHints({
@QueryHint(name=org.hibernate.annotations.QueryHints.COMMENT, value="SQL_PLAN_STUDENT"),
@QueryHint(name="GATHER_PLAN_STATISTICS" , value="GATHER_PLAN_STATISTICS")
})
不幸的是,我无法访问 Oracle dbms 的运行实例,因此我无法检查给定提示的结果。