在学MyBatis时参数的传参对我们是一大困扰。下面是我的一些总结:
一、单个参数:
public List getXXBeanList(String xxCode);
select t.* from tableName t where t.id= #{id}
其中方法名和ID一致,#{}中的参数名与方法中的参数名一直, 我这里采用的是XXXBean是采用的短名字,
select 后的字段列表要和bean中的属性名一致, 如果不一致的可以用 as 来补充。这样可以减少错误率,也能更有效的显示关系。
二、多参数:
public List getXXXBeanList(String xxId, String xxCode);
select t.* from tableName where id = #{0} and name = #{1}
由于是多参数那么就不能使用parameterType, 改用#{index}是第几个就用第几个的索引,注意:索引从0开始。
三、Map封装多参数:
public List getXXXBeanList(HashMap map);
select 字段… from XXX where id=#{xxId} code = #{xxCode}
其中hashmap是mybatis自己配置好的直接使用就行。map中key的名字是那个就在#{}使用那个,map如何封装就不用了我说了吧。