gpt4 book ai didi

Java - 在mybatis 3中设置参数的jdbcType

转载 作者:行者123 更新时间:2023-12-01 11:28:57 27 4
gpt4 key购买 nike

我正在尝试将 jdbcType 设置为传递给 Ibatis 查询的参数。我的后端表有定义为 varchar 的字段,并且 mybatis 框架似乎正在转换我传递的字符串参数在我的 mapper.java 到 nvarchar 中。结果,查询优化器需要时间来验证执行计划,进行隐式类型转换,因此会出现一些意外的延迟。关于解决这个问题有什么建议吗?

我已经尝试过的示例:从 myTable t 中选择 *,其中 t.periodType=#{periodType, javaType="String", jdbcType = "varchar"}

问题是,我们的查询非常大,它由很多子查询组成,我们在这些子查询中多次传递相同的参数。每次出现时为同一个变量定义 jdbcType 变得很麻烦。

由于parameterMap已被弃用,我尝试探索parameterType。我将一个类传递给parameterType,但找不到将jdbcType 设置为parameterType 中的变量的方法。

感谢任何帮助

最佳答案

parameterType 不会为您工作 - 这是 java 类型,很少需要。我能想到的一种选择是使用

select * from myTable t where t.periodType=<include refid="PARAM_PERIOD_TYPE"/>

但是这会使 SQL 不可读。唯一的优点是,如果要进行更改,则只需在引用的 PARAM_PERIOD_TYPE sql 标记中进行更改。

关于Java - 在mybatis 3中设置参数的jdbcType,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30585914/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com