繁体   English   中英

如何获取在Mybatis中生成字符串的准备好的语句

[英]How to get the prepared statement that was generated a string in Mybatis

我正在将开发人员工具用作Web服务。 要求之一是开发人员工具应该能够将Mybatis使用的准备好的语句作为字符串返回。 但是,我不太确定如何获取Mybatis用作对象的准备好的sql语句。

任何提示都很好。

经过进一步调查。 我偶然发现了这篇文章:

如何获取PreparedStatement的SQL?

但是,我仍然想知道是否可以通过任何方式实际联系服务器并查看已分析的准备好的SQL语句? 即检查我的数据库或某些连接模板的日志?

您可以将Mybatis日志记录用于SQL语句。
它产生如下的SQL prepare语句日志:

Preparing: SELECT USER_ID AS userId, PASSWORD AS password, USER_NAME AS userName FROM USER_MST WHERE USER_NAME = ? AND PASSWORD = ? AND DELETE_FLAG = 0 
Parameters: test_uname(String), test_pass(String)

是Mybatis日志记录文档。

以下是mybatis的示例日志配置。

<?xml version="1.0" encoding="UTF-8"?>
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/"
    debug="false">

    <appender name="APPLICATION" class="org.apache.log4j.DailyRollingFileAppender">
        <param name="file" value="C:/log/mybatis.log" />
        <param name="MaxBackupIndex" value="10" />
        <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss,SSS} |%5p| [%c] | %m%n" />
        </layout>
    </appender>


    <logger name="YourMapperXML" additivity="false">
        <level value="DEBUG" />
        <appender-ref ref="APPLICATION" />
    </logger>


</log4j:configuration>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM