Mybatis传递多个参数的三种实现方法
方案一
Dao层的函数方法
1 Public User selectUser(String name,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>
其中,#{0}代表接收的是dao层中的第一个参数,#{1}代表dao层中第二参数,更多参数一致往后加即可。
方案二(Map传值)
Dao层的函数方法
1 Public User selectUser(Map paramMap);
对应的Mapper.xml
<select id=" selectUser" parameterType="map" 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层的函数方法
1 Public User selectUser(@Param(“userName”) String name,@Param(“userArea”) String area);
对应的Mapper.xml
<select id=" selectUser" parameterType="map" resultMap="BaseResultMap"> select * from user_user_t where user_name = #{userName,jdbcType=VARCHAR} and user_area=#{userArea,jdbcType=VARCHAR} </select>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
相关文章
Java中的线程安全集合CopyOnWriteArrayList解析
这篇文章主要介绍了Java中的线程安全CopyOnWriteArrayList解析,CopyOnWriteArrayList是ArrayList的线程安全版本,从他的名字可以推测,CopyOnWriteArrayList是在有写操作的时候会copy一份数据,然后写完再设置成新的数据,需要的朋友可以参考下2023-12-12详解Java利用ExecutorService实现同步执行大量线程
这篇文章主要介绍了Java利用ExecutorService实现同步执行大量线程,ExecutorService可以维护我们的大量线程在操作临界资源时的稳定性。2017-03-03
最新评论