当前页面: 开发资料首页 → J2EE 专题 → 在ITBAS中使用dynamic获得动态查询SQL,请问在那里能打印出组装好的SQL语句吗?
在ITBAS中使用dynamic获得动态查询SQL,请问在那里能打印出组装好的SQL语句吗?
摘要: 在ITBAS中使用dynamic获得动态查询SQL,请问在那里能打印出组装好的SQL语句吗?
这是在IBATIS中sqlmap-mapping.xml中的一段动态生成SQL的方法。
select empo,employee_id,status,match_id,card_holder.create_by,card_holder.create_time from CARD_HOLDER,CARD
empo = #empo#
employee_id = #um_id#
status = #status#
match_id = #matchID#
CARD_HOLDER.create_by = #operator#
and CARD_HOLDER.CARD_ID = CARD.ID order by card_id asc
DAO中这样调用:
PaginatedList plist = getSqlMapClientTemplate().queryForLimitedPaginatedList("selectRecord", user,startIndex,maxReturn,pageSize);
//return plist;
现在SQL查询出来的结果有误,想知道怎么样可以打印出数据库执行的SQL语句,这样就可以把这个SQL放到数据库中执行,就能很快发现问题,很方便调试。
在那里可以打印出这个SQL语句呢?
我一般都直接把sql写到pl-sql里先执行通过后再写到sqlmap里去!
这我知道,关键是这段代码不是动态生成的吗?
empo = #empo#
employee_id = #um_id#
status = #status#
match_id = #matchID#
CARD_HOLDER.create_by = #operator#
不知道这段究竟生成了什么代码,想看看这到底生成了什么SQL。有遇到过这种问题的同事吗?
刚学,关注一下。
打印日志,用log4j 配置ibatis相关的log。
这个statement 相当简单。
没使用过ITBAS,帮你顶~