0
データベースでどのようなクエリが実行されているかを知る必要があるため、改善できるかどうか確認できます。TypedQueryからネイティブSQLクエリを見つける
TypedQuery<OrderItem> orderItemTypedQuery = typedQuery.setParameter(OrderItemCriteria.CUSTOMER_ID_PARAM, criteria.getCustomerId());
String sqlQuery=orderItemTypedQuery.unwrap(org.hibernate.Query.class).getQueryString();
次のクエリが示されている:
次のコードは、クエリを作成するために使用される
select generatedAlias0 from OrderItem as generatedAlias0 left join generatedAlias0.order as generatedAlias1 where (generatedAlias0.status in (:param0)) and (generatedAlias0.hidden=:param1) and (generatedAlias0.customer.id=:param2) and (generatedAlias0.linkedOrderItem is null) order by generatedAlias1.id desc, generatedAlias0.id desc
上記のクエリである(parameteresが設定されていない)ではないネイティブ、Iデータベース上で何が実行されているのかを調べて、クエリが遅くて最適化が必要かどうかを調べることができます。
おかげ