当前位置: 首页 > 知识库问答 >
问题:

如何将在 mybatis 映射器 xml 中执行的 sql 查询打印到控制台

张通
2023-03-14

假设我正在执行以下查询,该查询位于我的映射器 xml 中:

<select id="getData" parameterType="java.util.HashMap" resultType="java.util.LinkedHashMap">

select * from emp where empId=#{empId}          
    </select>

在上面的 xml empId 中,是一个动态值,它从 HashMap 的键返回值,该键在 Mybatis 的上述映射器 xml 中作为参数传递。

当运行上述映射到方法 getData 的选择查询时,有没有办法将带有传递参数的 sql 打印到控制台。

例如,我在控制台中传递数据empId = 1:从emp中选择*,其中empId = 1

共有2个答案

逑彬炳
2023-03-14

在项目中查找“logback.xml...\资源\

将 mybatis 日志级别更改为信息

林弘壮
2023-03-14

添加日志4j.属性

log4j.logger.yourmapperpackage=DEBUG

SQL调试是这样的:

2016-01-09 20:51:10,621 DEBUG [com.xxxMapper.insert] - <==>  Preparing: INSERT INTO video_info (content, id, create_time, title, media_url, zhan_count, cover_url) VALUES (?, ?, ?, ?, ?, ?, ?) >
2016-01-09 20:51:10,627 DEBUG [com.xxxMapper.insert] - <==> Parameters: vcontent(String), 0(Long), 2016-01-09 20:51:10.616(Timestamp), vtitle(String), null, 1(Integer), null>
2016-01-09 20:51:10,628 DEBUG [com.xxxMapper.insert] - <<==    Updates: 1>
 类似资料:
  • spring.jpa.properties.hibernate.show_sql=true spring.jpa.properties.hibernate.format_sql=true spring.jpa.properties.hibernate.use_sql_comments=true

  • 本文向大家介绍hibernate 中如何在控制台查看打印的 SQL 语句?相关面试题,主要包含被问及hibernate 中如何在控制台查看打印的 SQL 语句?时的应答技巧和注意事项,需要的朋友参考一下 在 Config 里面把 hibernate. show_SQL 设置为 true 就可以。但不建议开启,开启之后会降低程序的运行效率。

  • 在mapper中,我调用了一个proc'xyz',它返回所查询的ProcessType表的行列表的光标。

  • 问题内容: 我具有检索用户个人资料的功能。 调用“查找”功能时,它将在启动服务器的控制台上显示select语句。 有没有办法使它不显示?我在某个地方的配置文件中设置的一些标志? 问题答案: 创建Sequelize对象时,传递给参数: 有关更多选项,请检查docs。

  • 我试图使用TDD(测试驱动开发)与。当我使用时,不会到控制台。 我正在使用来运行它。 似乎说默认情况下它应该工作:http://pytest.org/latest/capture.html 但是: 没有任何东西被打印到我的标准输出控制台(只是正常的进度和多少测试通过/失败)。 我正在测试的脚本包含打印: 在模块中,默认情况下打印所有内容,这正是我所需要的。但是,出于其他原因,我希望使用。 有人知道

  • 我试图将命令提示符中打印出来的信息从JAVA控制台显示到C#。当在JAVA中发出System.out.println时,它可以很好地工作,但是它不能用于logger.info print out。 注意:当我通过windows命令提示符(CMD>java-jar testbed.jar)运行它时,记录器信息会在命令提示符中打印出来。 JAVA来做一个简单的增量和减量数字,当按下按钮进行增量或减量时

  • 如何在Spring Data Jpa中将映射映射到存储库中的查询? 下面是我的通用存储库源代码。 如下所示,我希望接收queryParams作为参数,并将queryParams对应的键和值映射到where子句。 因为它是一个GenericRepository,所以无法实现,我想把映射的内容放在@Query中。 我一直在搜索,但我找不到任何关于它的信息,所以我不知道如何解决这个问题。 如果有办法,请