Mybatis传递多个参数的解决办法(三种)
小编给大家分享三种方案解决mybatis传递多个参数的问题,具体介绍如下所示:
第一种方案
DAO层的函数方法
PublicUserselectUser(Stringname,Stringarea);
对应的Mapper.xml
<selectid="selectUser"resultMap="BaseResultMap">
select*fromuser_user_twhereuser_name=#{0}anduser_area=#{1}
</select>
其中,#{0}代表接收的是dao层中的第一个参数,#{1}代表dao层中第二参数,更多参数一致往后加即可。
第二种方案
此方法采用Map传多参数.
Dao层的函数方法
PublicUserselectUser(MapparamMap);
对应的Mapper.xml
<selectid="selectUser"resultMap="BaseResultMap">
select*fromuser_user_twhereuser_name=#{userName,jdbcType=VARCHAR}anduser_area=#{userArea,jdbcType=VARCHAR}
</select>
Service层调用
PrivateUserxxxSelectUser(){
MapparamMap=newhashMap();
paramMap.put(“userName”,”对应具体的参数值”);
paramMap.put(“userArea”,”对应具体的参数值”);
Useruser=xxx.selectUser(paramMap);}
个人认为此方法不够直观,见到接口方法不能直接的知道要传的参数是什么。
第三种方案
Dao层的函数方法
PublicUserselectUser(@param(“userName”)Stringname,@param(“userArea”)Stringarea);
对应的Mapper.xml
<selectid="selectUser"resultMap="BaseResultMap">
select*fromuser_user_twhereuser_name=#{userName,jdbcType=VARCHAR}anduser_area=#{userArea,jdbcType=VARCHAR}
</select>
个人觉得这种方法比较好,能让开发者看到dao层方法就知道该传什么样的参数,比较直观,个人推荐用此种方案。
以上所述是小编给大家介绍的Mybatis传递多个参数的解决办法,希望对大家有所帮助!
热门推荐
1 训练狗狗憋尿
2 狗狗追踪训练
3 狗狗训练要多少钱
5 深圳狗狗训练
6 训练狗狗唤回
7 狗狗叫怎么训练
8 狗狗训练班
10 狗狗社会化训练
11 狗狗叫回训练
12 广州狗狗训练学校
13 狗狗训练躺下
14 狗狗随行训练
15 训练狗狗巡回
16 狗狗要怎么训练
17 狗狗喂食训练
18 训练狗狗躺下