阅读量:0
在MyBatis中,可以使用if语句来动态构建SQL查询语句。如果想要在if语句中绑定参数,可以使用以下方法:
- 使用#{param}占位符:在if语句中直接使用#{param}占位符来引用参数,MyBatis会自动将参数绑定到占位符中。
<select id="getUserById" parameterType="int" resultType="User"> SELECT * FROM user WHERE id = #{userId} <if test="name != null"> AND name = #{name} </if> </select>
- 使用${param}占位符:在if语句中使用${param}占位符来引用参数,需要手动将参数绑定到占位符中。
<select id="getUserById" parameterType="int" resultType="User"> SELECT * FROM user WHERE id = #{userId} <if test="name != null"> AND name = ${name} </if> </select>
需要注意的是,使用${param}占位符存在SQL注入的风险,因此建议优先使用#{param}占位符。