论坛首页 Java企业应用论坛

请教:在iBatis里面,怎么让把最后执行的sql输出到控制台?

浏览 17311 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2005-09-23  
谢谢!
   发表时间:2005-09-23  
今天在修改以前用ibatis做的项目,遇到一个错误不知道究竟错在哪儿了,而且用旧的ibatis版本,错误提示根本是错的!
        找了大概5分钟没找着这个打印sql的功能,郁闷中,突然想起了p6spy,马上找到 原因了,爽.
0 请登录后投票
   发表时间:2005-09-23  
:cry: ,问题时找到了,可是还没解决问题,还是得去读文档.

from tblSubject
    where  0 

      <isPropertyAvailable property="subjectsList" prepend="or">
          <isNotNull prepend="" property="subjectsList">
         	 tblSubject.Id in 
         		<iterate property="subjectsList" open="(" close=");" conjunction="" >
				   				  #subjectsList[]#
         		</iterate>
         </isNotNull>
      </isPropertyAvailable>



结果输出

    where  0 
      or
          
         	 tblSubject.Id in 
         		(
				   				  ('1,2,3,4,5');
         		);


不知道怎么把'去掉
0 请登录后投票
   发表时间:2005-09-23  
可以在log4j中将打印信息由原来的info级别改成debug级别就可以了
0 请登录后投票
   发表时间:2005-09-23  
# SqlMap logging configuration...
log4j.logger.com.ibatis=INFO
log4j.logger.com.ibatis.common.jdbc.SimpleDataSource=INFO
log4j.logger.com.ibatis.common.jdbc.ScriptRunner=INFO
log4j.logger.com.ibatis.sqlmap.engine.impl.SqlMapClientDelegate=INFO
log4j.logger.java.sql.Connection=INFO
log4j.logger.java.sql.Statement=INFO
log4j.logger.java.sql.PreparedStatement=INFO
log4j.logger.java.sql.ResultSet=INFO


哪一条?好像不能像hibernate那样答应出sql语句吧?
0 请登录后投票
   发表时间:2005-09-23  
#subjectsList[]#  改成 $subjectsList[]$ 即可.
0 请登录后投票
   发表时间:2005-10-25  
log4j.logger.java.sql.PreparedStatement=INFO

=&gt;

log4j.logger.java.sql.PreparedStatement=DEBUG
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics