これは簡単な質問だと思いますが、解決方法はわかりません。
spring/Hibernate アプリケーションでは、基準が実行するクエリを表示する必要があります。
show_sql プロパティを使用し、log4j またはその他のログ フレームワークを使用してクエリをログに記録できることはわかっていますが、必要なのはより高いレベルのログ記録です。
私はこのような方法を持っています
public void searchIntegrationClient(IntegrationClientSearchCommand integrationClientSearchCommand,PartialList<IntegrationClient> partialList) {
Session session = getSession();
Criteria pageCriteria=session.createCriteria(IntegrationClient.class);
if(StringUtil.isNotEmpty(integrationClientSearchCommand.getNameCmd())){
pageCriteria.add(Restrictions.like("name", integrationClientSearchCommand.getNameCmd(), MatchMode.START));
}
//adding ordering alphabetically
pageCriteria.addOrder(Order.asc("name"));
pageCriteria.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY);
List<IntegrationClient> list = (List<IntegrationClient>)pageCriteria.list();
partialList.setPartialResultList(list);
Criteria countCriteria=session.createCriteria(IntegrationClient.class);
if(StringUtil.isNotEmpty(integrationClientSearchCommand.getNameCmd())){
countCriteria.add(Restrictions.like("name", integrationClientSearchCommand.getNameCmd(), MatchMode.START));
}
countCriteria.setProjection(Projections.rowCount());
partialList.setTotalNumberOfRecords(((Integer)countCriteria.uniqueResult()).intValue());
releaseSession(session);
}
実行されるクエリを表示するには、criteria.list を実行する前に必要ですか?
私が望むようにクエリを表示するための基準APIにユーティリティクラスはありますか?
事前にthnx