国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術(shù)文章
文章詳情頁

Mybatis動(dòng)態(tài)SQL foreach標(biāo)簽用法實(shí)例

瀏覽:36日期:2023-10-22 07:55:01

需求:傳入多個(gè) id 查詢用戶信息,用下邊兩個(gè) sql 實(shí)現(xiàn):

SELECT * FROM USERS WHERE username LIKE ’%張%’ AND (id =10 OR id =89 OR id=16)

SELECT * FROM USERS WHERE username LIKE ’%張%’ AND id IN (10,89,16)

這樣我們在進(jìn)行范圍查詢時(shí),就要將一個(gè)集合中的值,作為參數(shù)動(dòng)態(tài)添加進(jìn)來。

這樣我們將如何進(jìn)行參數(shù)的傳遞?

1、實(shí)體類

public class QueryVo implements Serializable { private List<Integer> ids; public List<Integer> getIds() {return ids; } public void setIds(List<Integer> ids) {this.ids = ids; } }

2、持久層接口

/*** 根據(jù) id 集合查詢用戶* @param vo* @return*/List<User> findInIds(QueryVo vo);

3、映射文件

<!-- 查詢所有用戶在 id 的集合之中 --><select resultType='user' parameterType='queryvo'> <!-- select * from user where id in (1,2,3,4,5); -->select * from user <where> <if test='ids != null and ids.size() > 0'> <foreach collection='ids' open='id in ( ' close=')' item='uid' separator=','>#{uid} </foreach></if> </where></select>

SQL 語句:

select 字段 from user where id in (?)

foreach標(biāo)簽用于遍歷集合,它的屬性

collection:代表要遍歷的集合元素,注意編寫時(shí)不要寫#{} open:代表語句的開始部分 close:代表結(jié)束部分 item:代表遍歷集合的每個(gè)元素,生成的變量名 sperator:代表分隔符

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Mybatis 數(shù)據(jù)庫
相關(guān)文章:
主站蜘蛛池模板: 扶沟县| 农安县| 若尔盖县| 汝城县| 临江市| 桑日县| 清远市| 聂拉木县| 珲春市| 年辖:市辖区| 化州市| 蒙阴县| 锡林浩特市| 北辰区| 安达市| 荔浦县| 邵阳市| 花莲县| 南开区| 葫芦岛市| 类乌齐县| 泰兴市| 南澳县| 沙坪坝区| 金昌市| 商南县| 简阳市| 噶尔县| 栖霞市| 遂平县| 阳江市| 黔南| 万全县| 剑河县| 荔浦县| 垫江县| 阿拉尔市| 叙永县| 年辖:市辖区| 金山区| 九江市|