MyBatis 動態SQL語句

SysUserMapper.java

List<SysUser> selectChoseInfo( String userInfo);

SysUserMapper.xml

  <select id="selectChoseInfo" parameterType="java.lang.String" resultMap="BaseResultMap">
    select * from sys_user where 1=1 and user_info =#{userInfo}
    <choose>
      <when test="userInfo != null and userInfo !=''">
        and user_info =#{userInfo}
      </when>
      <otherwise>
        and 1=2
      </otherwise>
    </choose>
  </select>

parameterType=”java.lang.String” 可以省略,根據接口的定義自動解析。

    List<SysUser> selectChoseInfo( @Param("userInfo") String userInfo);

一般來說我們參數傳遞只有一個,基本數據類型或者javaBean,當數據多於一個的時候,就會報錯。這時我們就需要使用@param來爲傳遞的參數設置別名。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章