手机
当前位置:查字典教程网 >编程开发 >Java >Mybatis传递多个参数的解决办法(三种)
Mybatis传递多个参数的解决办法(三种)
摘要:小编给大家分享三种方案解决mybatis传递多个参数的问题,具体介绍如下所示:第一种方案DAO层的函数方法PublicUserselectU...

小编给大家分享三种方案解决mybatis传递多个参数的问题,具体介绍如下所示:

第一种方案

DAO层的函数方法

Public User selectUser(String name,String area);

对应的Mapper.xml

<select id="selectUser" resultMap="BaseResultMap"> select * from user_user_t where user_name = #{0} and user_area=#{1} </select>

其中,#{0}代表接收的是dao层中的第一个参数,#{1}代表dao层中第二参数,更多参数一致往后加即可。

第二种方案

此方法采用Map传多参数.

Dao层的函数方法

Public User selectUser(Map paramMap);

对应的Mapper.xml

<select id=" selectUser" resultMap="BaseResultMap"> select * from user_user_t where user_name = #{userName,jdbcType=VARCHAR} and user_area=#{userArea,jdbcType=VARCHAR} </select>

Service层调用

Private User xxxSelectUser(){ Map paramMap=new hashMap(); paramMap.put(“userName”,”对应具体的参数值”); paramMap.put(“userArea”,”对应具体的参数值”); User user=xxx. selectUser(paramMap);}

个人认为此方法不够直观,见到接口方法不能直接的知道要传的参数是什么。

第三种方案

Dao层的函数方法

Public User selectUser(@param(“userName”)Stringname,@param(“userArea”)String area);

对应的Mapper.xml

<select id=" selectUser" resultMap="BaseResultMap"> select * from user_user_t where user_name = #{userName,jdbcType=VARCHAR} and user_area=#{userArea,jdbcType=VARCHAR} </select>

个人觉得这种方法比较好,能让开发者看到dao层方法就知道该传什么样的参数,比较直观,个人推荐用此种方案。

以上所述是小编给大家介绍的Mybatis传递多个参数的解决办法,希望对大家有所帮助!

【Mybatis传递多个参数的解决办法(三种)】相关文章:

java向多线程中传递参数的三种方法详细介绍

java页面中文乱码的解决办法

hibernate 常用方法介绍

java多线程编程之向线程传递数据的三种方法

java 重定义数组的实现方法(与VB的ReDim相像)

java list与数组之间的转换详细解析

通过url方式传递中文乱码的解决方法

java读写二进制文件的解决方法

java多线程编程之从线程返回数据的两种方法

Java递归算法的使用分析

精品推荐
分类导航