【学习笔记】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
<selectid=" selectUser"resultMap="BaseResultMap">
select * fromuser_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>

参考文章:

Mybatis传多个参数(三种解决方案)
mybatis传入混合参数(多个不同类型的参数)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,955评论 18 399
  • 1. 简介 1.1 什么是 MyBatis ? MyBatis 是支持定制化 SQL、存储过程以及高级映射的优秀的...
    笨鸟慢飞阅读 11,158评论 0 4
  • 11 MyBatis一级缓存实现# 11.1 什么是一级缓存? 为什么使用一级缓存?## 每当我们使用MyBati...
    七寸知架构阅读 13,701评论 12 143
  • 一. Java基础部分.................................................
    wy_sure阅读 9,255评论 0 11
  • 遇到一个有意思的短语 zip, nothing, nada,然后有人专门考证了其出处: The phrase, w...
    马文Marvin阅读 3,290评论 0 0