mybatis多个参数不加@Param
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mybatis多个参数不加@Param相关的知识,希望对你有一定的参考价值。
参考技术A mybatis 3.4.1之后,允许不加 @Param指定参数名称,自动会以入参的名称作为param key不加 @Param 的多入参mapper
入参为: update(110, "testAppName")
useActualParamName 默认是true,如果入参没加@Param指定参数key,则会利用java8的特性,从反射类Parameter#getName()获取这个参数的名称
例如,可以maven编译插件上指定
不推荐偷懒,这种方式依赖java8的编译特性,比较隐晦,容易让其他开发混淆
mybatis 怎么获取多个参数
参考技术A 一、mybatis传递多个参数时获取parameterType="Java.util.Map",参数依次为:param1,param2,param3.........
或者 #0,#1,#2。。。。。
二、条件判断
<where>
<if test="param1 != null and param1 != ''">
and t.kind = #param1//#号获取的是字符串,$获取的数值
</if>
<where>
传一个参数时:test中用 _parameter
匹配bean属性和表中字段
<resultMap id="tchannel" type="com.htcf.website.model.pojo.TChannel">
<result property="id" column="id" />
<result property="kind" column="kind" />
<result property="lob" column="lob" />
</resultMap>
三、特殊字符
<![CDATA[ ]]>
以上是关于mybatis多个参数不加@Param的主要内容,如果未能解决你的问题,请参考以下文章