• 设置Mybatis打印调试sql的两种方式


    http://blog.csdn.net/gao36951/article/details/53641432

    **************************************************

    问题描述

    在使用mybatis进行开发的时候,由于可以动态拼接sql,这样大大方便了我们。但是也有一定的问题,当我们动态sql拼接的块很多的时候,我们要想从*mapper.xml中直接找出完整的sql就会非常的难,这个时候经常会需要把组合之后的完整sql调试出来比较好。下面来看两种调试出sql的两种方式

    解决方案

    方案1:
    网上说的比较多的,之前也是这么用的一种方式
    1:首先将ibatis log4j运行级别调到DEBUG可以在控制台打印出ibatis运行的sql语句
    2:添加如下语句

    ###显示SQL语句部分
    log4j.logger.com.ibatis=DEBUG
    log4j.logger.com.ibatis.common.jdbc.SimpleDataSource=DEBUG
    log4j.logger.com.ibatis.common.jdbc.ScriptRunner=DEBUG
    log4j.logger.com.ibatis.sqlmap.engine.impl.SqlMapClientDelegate=DEBUG
    log4j.logger.Java.sql.Connection=DEBUG
    log4j.logger.java.sql.Statement=DEBUG
    log4j.logger.java.sql.PreparedStatement=DEBUG

    方案2:
    最近发现的一种方式,方便快捷
    在mybatis.cfg.xml中增加如下配置

    <settings>中增加
    <setting name="logImpl" value="STDOUT_LOGGING" />

    以上mybatis 调试出sql的两种方式,Mark~~~

    补充:

    在spring boot 中,可以配置application.properties

    # --- {Logging}
    logging.level.com.neusoft.newsroom=INFO
    logging.level.org.springframework.security=INFO
    logging.level.org.hibernate=ERROR
    logging.level.com.mypackage.domain.persistence=DEBUG

    参考

    http://www.mybatis.org/mybatis-3/zh/logging.html

  • 相关阅读:
    setTimeout()和setInterval()的区别
    iOS开发小技巧
    iOS应用跳转到App Store评分
    前端小技巧-定位的活学活用之仿淘宝列表
    前端CSS
    用c# 开发html5的尝试,试用bridge.net
    Faster数据库研习,一
    五一劳动节,讲讲NEO智能合约的调试
    NEO GUI 多方签名使用
    NEO智能合约开发(二)再续不可能的任务
  • 原文地址:https://www.cnblogs.com/zhao1949/p/6497497.html
Copyright © 2020-2023  润新知