91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Mybatis查詢條件包含List的示例分析

發布時間:2021-09-24 11:19:43 來源:億速云 閱讀:154 作者:小新 欄目:開發技術

小編給大家分享一下Mybatis查詢條件包含List的示例分析,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

查詢條件包含List的情況

在mybatis中進行搜索時,有時候參數中包含了List,比如傳入參數:

public class FileRequest{
    //文件類型
    private Integer fileType;
    //狀態
    private List<Status> statusList;
} 
public class Status{
    //注冊狀態
    private Integer registerStatus;
    //會議狀態
    private Integer meetingStatus
}

在mybatis中查詢的語句

<select id="findList" parameterType="FileRequest" resultMap="...">
    select * from tableName where
    1=1
    <if test="fileType != null ">
        and file_type = #{fileType}
    </if>
    <if test="statusList != null ">
        and 
        <foreach collection="statusList" index="index" item="item" open"(" separator="or" close=")">
            <if test="item.registerStatus != null ">
                and register_status= #{item.registerStatus}
            </if>
            <if test="item.meetingStatus != null ">
                and meeting_status= #{item.meetingStatus }
            </if>    
        </foreach>
    </if>
</select>

查詢條件帶List和其他類型字段

需求

Mybatis查詢條件帶List和其他類型字段(Integer,String,...).

select * from table where type=?
and code in (?,?,?,?)

Mapper.java文件

List<BaseDictionary> selectByTypeAndCodes(
 @Param("codes") List<Integer> codes,
@Param("type") Integer type);
 Mapper.xml.

注意其中<foreach collection="codes"中的collection的值要和你定義的List別名@Param(“codes”)一致,

而不是只有一個list參數時的<foreach collection="list"

<select id="selectByTypeAndCodes"  resultMap="BaseResultMap">
    select
    <include refid="Base_Column_List" />
    from base_dictionary
    where type = #{type}
    AND code in
    <foreach collection="codes" index="index" item="item" open="(" separator="," close=")">
     #{item}
    </foreach>
    AND show_enable=1
    AND obj_status=1
    ORDER BY sort
  </select>

執行結果:

BaseJdbcLogger.debug(BaseJdbcLogger.java:145)==> Preparing: select id, type, name, code, sort, show_enable, obj_remark, obj_status, obj_createdate, obj_createuser, obj_modifydate, obj_modifyuser from base_dictionary where type = ? AND code in ( ? , ? , ? ) AND show_enable=1 AND obj_status=1 ORDER BY sort

BaseJdbcLogger.debug(BaseJdbcLogger.java:145)==> Parameters: 34(Integer), 1(Integer), 2(Integer), 3(Integer)

BaseJdbcLogger.debug(BaseJdbcLogger.java:145)<== Total: 2

以上是“Mybatis查詢條件包含List的示例分析”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

阿勒泰市| 乐清市| 四平市| 和硕县| 沁源县| 和龙市| 分宜县| 湖口县| 鲜城| 陕西省| 南乐县| 松阳县| 页游| 万载县| 景谷| 临沭县| 普兰县| 青冈县| 内江市| 潞城市| 泗洪县| 呈贡县| 博湖县| 英吉沙县| 庆元县| 莱芜市| 洪湖市| 绥江县| 盐源县| 田阳县| 忻城县| 开阳县| 桃源县| 湖南省| 宜丰县| 克什克腾旗| 汶上县| 河北省| 仲巴县| 罗源县| 新河县|