天天看點

Mybatis傳遞多個參數

一、使用索引?

#{index}

DAO層函數方法

Public User selectUser(String name, String area);
      

  Mapper.xml中SQL

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

  

二、使用Map

Public User selectUser(Map<String, Object> map);
      
<select id="selectUser" resultMap="BaseResultMap">
    select  
        *  
    from 
        user_user_t
    where 
    user_name = #{username, jdbcType=VARCHAR} 
    and user_area = #{userarea, jdbcType=VARCHAR}
</select>
      

  Service層函數調用

public User selectUser() {
    Map<String, Object> map = new HashMap<String, Object>();
    map.put("username", "zhangsan");
    map.put("userarea", "beijing");
    User user = mapper.selectUser(map); 
}
      

三、使用注解

DAO層函數

public User selectUser(@Param("userName")String username, @Param("userArea")String userarea);
      
<select id="selectUser" resultMap="BaseResultMap">
    select  
        *  
    from 
        user_user_t
    where 1 = 1 
    and user_name = #{userName} 
    and user_area=#{userArea}
</select>