我有一个java程序,我想获取 我登录网站执行过的所有sql语句,我的配置ibaties 有什么方法,最好有例子。怎么获取执行过的所有sql语句SQLJava

解决方案 »

  1.   

    不要日志里面的
    我是ibaties 就直接一个请求一个周期 完成之后 获取到sql语句。。
      

  2.   

    方法有三:
    1、p6spy + sqlprofiler,只能看,如项目中应用需二次开发
    2、logback 配置ibatis 执行日志级别,同时logback.xml定义支持数据库记录方式
    <appender name="db" class="ch.qos.logback.classic.db.DBAppender">,api帮助上有表结构说明
    3、修改ibatis的源码,把sql写入自定义数据库表。可看我博客
      

  3.   

    在classes下新建log4j.xml,内容如下:
    <?xml version="1.0" encoding="UTF-8" ?>  
    <!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">  
      
    <log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">  
      
        <!-- Console output -->  
      
        <appender name="STDOUT" class="org.apache.log4j.ConsoleAppender">  
            <layout class="org.apache.log4j.PatternLayout">  
                <param name="ConversionPattern" value="%-5p %d{MM-dd HH:mm:ss} %m  (%F:%L) \n" />  
            </layout>  
        </appender>  
      
        <category name="java.sql">  
            <priority value="debug" />  
        </category>  
        <category name="com.ibatis">  
            <priority value="debug" />  
        </category>  
        <root>  
            <priority value="error" />  
            <appender-ref ref="STDOUT" />  
        </root>  
      
    </log4j:configuration>