4
我认为这是一个简单的问题,虽然我不知道如何解决它。休眠如何显示条件查询
在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预先