题
我有一个对话cope.myvar =“ myValue”变量;
我想在mybatis地图中使用它,例如
select col1, col1, conversationScope.myVar as ScopeVar
from table1;
desired result
col1 col2 ScopeVar
xxxx xxxx myValue
yyyy yyyy myValue
...
解决方案
Mybatis确实支持您所需的性质的动态SQL。最大的技巧是使用$ {变量}而不是#{actible}。请小心,它使您容易受到SQL注射攻击的影响。当使用#mybatis时,请使用准备剂来避免SQL注入,然后
因此,例如,例如,您有一个带有方法的映射器接口。
ComplexObject selectSomeObject(@Param("columnName") String columnName);
您的SQL地图可以在实际选择代码的一部分中使用参数。
IE
<select id="selectSomeObject" resultType="someObject">
select t1.column as ${columnName}
from table1 t1
</select>
如果您需要全局变量,请查看此问题。 mybatis-定义全局参数
不隶属于 StackOverflow