Mybatis foreach 請求引數是物件集合
需求 引數是物件集合
/** * 查詢對應客戶的聯絡人資訊 * @param qeury * @return */ public List<CustomerContactInfoList> getCustomerContactInfoList(List<CustomerContactInfoList> qeury);
對應實現
<select id="getCustomerContactInfoList" parameterType="java.util.List" resultType="com.zhongan.crm.dataobject.extend.CustomerContactInfoList"> select tci.name as "customerName", tcp.name as "name", tcp.phone as "phone" FROM t_customer_info tci join t_contact_person tcp ON tci.id=tcp.customer_info_id where 1=1 <if test="list!=null"> <foreach collection="list" item="item" index="index" open="and (" separator="or " close=")"> <if test="item.customerName!=null and ''!=item.customerName"> tci.name=#{item.customerName} </if> <if test="item.name!=null and ''!=item.name"> and tcp.name=#{item.name} </if> <if test="item.phone!=null and ''!=item.phone"> and tcp.phone=#{item.phone} </if> </foreach> </if> </select>
- foreach元素的屬性主要有 item,index,collection,open,separator,close。
- item表示集合中每一個元素進行迭代時的別名,
- index指定一個名字,用於表示在迭代過程中,每次迭代到的位置,
- open表示該語句以什麼開始,
- separator表示在每次進行迭代之間以什麼符號作為分隔符,
- close表示以什麼結束。
在使用foreach的時候最關鍵的也是最容易出錯的就是collection屬性,該屬性是必須指定的,但是在不同情況下,該屬性的值是不一樣的,主要有一下3種情況:
1.如果傳入的是單引數且引數型別是一個List的時候,collection屬性值為list
2.如果傳入的是單引數且引數型別是一個array陣列的時候,collection的屬性值為array
- 3.如果傳入的引數是多個的時候,我們就需要把它們封裝成一個Map或者Object。
相關文章
- 請求引數為物件,mybatis的sql寫法物件MyBatisSQL
- MyBatis引數傳入集合之foreach動態sqlMyBatisSQL
- Postman傳送請求引數是Map格式的請求Postman
- mybatis list作為引數 foreach迴圈MyBatis
- 有趣的請求引數/請求頭
- SpringMVC學習(三)對映請求引數&請求引數SpringMVC
- JavaWeb基礎-Request物件接收表單請求引數JavaWeb物件
- 使用strutstestcase如何在請求引數中傳遞物件...物件
- 請求引數的傳遞
- SpringMVC請求引數解析SpringMVC
- fastapi 請求引數 校驗ASTAPI
- Charles 修改請求(Request)引數
- 什麼是請求引數、表單引數、url引數、header引數、Cookie引數?一文講懂HeaderCookie
- Mybatis傳入引數為List物件MyBatis物件
- MyBatis中傳入引數為List集合的MyBatis
- ajax中POST請求與引數(請求體)設定
- mybatis sql foreach 引數的傳入的三種情況!!MyBatisSQL
- GOLANG Web請求引數驗證GolangWeb
- GET請求的引數丟失
- java 請求HTTP返回json集合,物件處理方式JavaHTTPJSON物件
- mybatis 的傳入引數如何既有物件又有單個引數MyBatis物件
- 後臺接收Json請求引數相容陣列和單個物件JSON陣列物件
- 表單請求獲取路由引數路由
- request的請求引數獲取方式
- 漫遊 servlet請求引數 %urldecodeServlet
- java傳送get請求帶引數Java
- charles 打斷點修改請求引數斷點
- Retrofit 動態引數(非固定引數、非必須引數)(Get、Post請求)
- 如何在mybatis 中傳多個引數,如何在mybatis 中遍歷 集合?MyBatis
- 關於在request請求時,處理請求引數的問題
- MyBatis 使用foreach與其他方式的時候引數傳遞方式MyBatis
- postman 請求引數和 Spring Boot Controller 接受引數PostmanSpring BootController
- Thinkphp5基礎——10 請求引數PHP
- Struts2中請求引數校驗
- Struts2中獲取請求引數
- leaflet動態更改wms瓦片請求引數
- MyBatis中foreach傳入引數為list、陣列、map的不同寫法MyBatis陣列
- foreach 實現 MyBatis 遍歷集合與批量運算元據MyBatis