日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

mybatis配置對象包含對象以及List的方式

瀏覽:188日期:2023-10-19 08:34:42
mybatis配置對象包含對象及List

這里隱藏get set方法

public class BatchManagerViewVo implements Serializable{ /*** @Description: serialVersionUID : TODO*/ private static final long serialVersionUID = 1L; private List<ResourcesItemDto> resourceItem;private List<PriceInfoDto> priceInfo;/** * 主鍵(PM200600001) */ @Id @Column(name = 'ID') private String id; public List<ResourcesItemDto> getResourceItem() {return resourceItem;}public void setResourceItem(List<ResourcesItemDto> resourceItem) {this.resourceItem = resourceItem;}public List<PriceInfoDto> getPriceInfo() {return priceInfo;}public void setPriceInfo(List<PriceInfoDto> priceInfo) {this.priceInfo = priceInfo;} /** * 場次名稱 */ @Column(name = 'BATCH_NAME') private String batchName; /** * 會員名稱 */ @Column(name = 'MEMBER_NAME') private String memberName; /** * 發起競價的會員代碼 */ @Column(name = 'MEMBER_CODE') private String memberCode; /** * 委托狀態:0-已生成,1-已發布,2.競價中 3-已撤消,4--已作廢,5-已完成 */ @Column(name = 'BATCH_STATE') private String batchState; /** * 委托申請時間 */ @Column(name = 'BATCH_DATE') private Date batchDate; /** * 結束時間 */ @Column(name = 'END_TIME') private Date endTime; /** * 開始時間 */ @Column(name = 'START_TIME') private Date startTime; /** * 履約保證金是否已經支付 1 - 已經支付 0 - 未支付(只有此狀態為1才允許開始拍賣) */ @Column(name = 'BOND_PAYMENT_STATUS') private String bondPaymentStatus; /** * 結算方式:1-場外結算(默認) 2- 場內結算 */ @Column(name = 'SETTLEMENT_MODE') private String settlementMode; /** * 作廢時間 */ @Column(name = 'INVALID_DATE') private Date invalidDate; /** * 審核操作員 */ @Column(name = 'AUDIT_OPERATOR') private String auditOperator; /** * 終止操作員 */ @Column(name = 'STOP_OPERATOR') private String stopOperator; /** * 作廢操作員 */ @Column(name = 'INVALID_OPERATOR') private String invalidOperator; /** * 申請操作員 */ @Column(name = 'APPLY_OPERATOR') private String applyOperator; /** * 公告日 */ @Column(name = 'ANNOUNCEMENT_DAY') private Date announcementDay; /** * 競價日 */ @Column(name = 'BID_DAY') private Date bidDay; /** * 買方保證金 */ @Column(name = 'BUYER_DEPOSIT') private BigDecimal buyerDeposit; /** * 賣家保證金 */ @Column(name = 'SELLER_BOND') private BigDecimal sellerBond; /** * 強制終止理由 */ @Column(name = 'FORCED_TERMINATION_REASON') private String forcedTerminationReason; /** * 終止委托審核理由(待定) */ @Column(name = 'AUDIT_STOP_REASON') private String auditStopReason; /** * 終止委托審核時間(待定) */ @Column(name = 'AUDIT_STOP_DATE') private Date auditStopDate; /** * 終止委托申請理由(待定) */ @Column(name = 'APPLY_STOP_REASON') private String applyStopReason; /** * 終止委托申請時間(待定) */ @Column(name = 'APPLY_STOP_DATE') private Date applyStopDate; /** * 拒絕審核委托理由(待定) */ @Column(name = 'REFUSE_AUDIT_REASON') private String refuseAuditReason; /** * 委托審核時間(待定) */ @Column(name = 'AUDIT_TIME') private Date auditTime; /** * 定向競價0否1是1 */ @Column(name = 'IS_DIRECTIONAL_BID') private String isDirectionalBid; /** * 定向的原因,當場次定向時必須輸入 */ @Column(name = 'DIRECTIONAL_REASON') private String directionalReason; /** * 是否需要發送短信0不發送1發送 */ @Column(name = 'IS_SEND_MESSAGE') private String isSendMessage; /** * 是否顯示中標價格 */ @Column(name = 'IS_SHOW_DEAL_PRICE') private String isShowDealPrice; /** * 是否顯示定價 */ @Column(name = 'IS_SHOW_ORDER_PRICE') private String isShowOrderPrice; /** * 是否顯示中標會員 */ @Column(name = 'IS_SHOW_DEAL_MEMBER') private String isShowDealMember; /** * 最少響應人數 */ @Column(name = 'MINIMUM_RESPONSE') private String minimumResponse; /** * 是否顯示成交結果 */ @Column(name = 'ISSHOWDEALRESULT') private String isshowdealresult; /** * 競價模式:1-公開增價,2自由報價,3-荷式競價 */ @Column(name = 'BIDDING_TYPE') private String biddingType; /** * 報盤方式:1-單價,2-總價 */ @Column(name = 'OFFER_TYPE') private String offerType; /** * 是否顯示起拍價 1顯示(默認) 2不顯示 */ @Column(name = 'IS_SHOW_STARTING_PIRCE') private String isShowStartingPirce; /** * 域名 */ @Column(name = 'DOAMIN') private String doamin; /** * 協議 */ @Column(name = 'EDITMENT') private String editment;}

<select parameterType='com.ouyeel.chem.bdt.search.BatchManagerSerachModel' resultMap='batchInfoMap'> select batch.ID, batch.BATCH_NAME, batch.BATCH_STATE batch_state, batch.START_TIME batch_start_time, batch.END_TIME batch_end_time, batch.IS_DIRECTIONAL_BID batch_is_direc, batch.BUYER_DEPOSIT batch_buyer_deposit, batch.BIDDING_TYPE batch_bidding_type, batch.OFFER_TYPE batch_offer_type, batch.BATCH_DATE batch_date, batch.ANNOUNCEMENT_DAY batch_announ, batch.BID_DAY batch_bid_day, price.id price_id, price.STARTING_PIRCE price_starting_price, price.BIDDING_GRADIENT price_bidding_gradient, price.TAX_RATE price_tax_rate, price.TAX_FREE_PRICE price_tax_free_price, price.RESERVE_PRICE price_reserve_price, item.PRODUCT_NAME item_product_name, item.PRODUCT_NO item_product_no, item.PACKAGES item_packages, item.ORIGIN_PLACE item_origin_place, item.WAREHOUSE_NAME item_warehouse, item.PIECE_UNIT item_piece_unit, item.TRADING_WEIGHT item_trading_weight from bdt_batch batch left join bdt_resources_item item on item.batch_id = batch.id left join bdt_price_info price on price.batch_id = batch.id and item.id = price.item_id where batch.member_code = #{memberCode,jdbcType=VARCHAR}<!-- and batch.id = ’P170508005’ --> <if test='id != null and id != ’’ '> and batch.id like ’%${id}%’ </if> <if test='startTime != null and startTime != ’’ '> and batch.batch_date >= #{startTime,jdbcType=TIMESTAMP} </if> <if test='endTime != null and endTime != ’’ '> and batch.batch_date <= #{endTime,jdbcType=TIMESTAMP} </if> <if test='batchState != null and batchState != ’’ '> and batch.batch_state = #{batchState,jdbcType=VARCHAR} </if><if test='sidx != null and sidx != ’’ '> order by batch.${sidx} ${sord} </if> <if test='sidx == null or sidx ==’’'> order by batch.id desc </if> </select>

<resultMap type='com.ouyeel.chem.bdt.entity.vo.BatchManagerViewVo' id='batchInfoMap'><!-- association字面意思關聯,這里只專門做一對一關聯; property表示是com.mybatis.bean.StudentTemp中的屬性名稱; javaType表示該屬性是什么類型對象 --><!-- property 表示com.mybatis.bean.Class中的屬性; column 表示表中的列名 --><id property='id' column='id'/> <result property='batchName' column='batch_name'/> <result property='startTime' column='batch_start_time'/> <result property='endTime' column='batch_end_time'/> <result property='isDirectionalBid' column='batch_is_direc'/> <result property='batchState' column='batch_state'/> <result property='buyerDeposit' column='batch_buyer_deposit'/> <result property='biddingType' column='batch_bidding_type'/> <result property='offerType' column='batch_offer_type'/> <result property='batchDate' column='batch_date'/> <result property='announcementDay' column='batch_announ'/> <result property='bidDay' column='batch_bid_day'/><!-- property表示集合類型屬性名稱,ofType表示集合中的對象是什么類型 --><collection property='priceInfo' ofType='com.ouyeel.chem.bdt.entity.PriceInfoDto'> <id property='id' column='price_id'/> <result property='startingPirce' column='price_starting_price'/> <result property='biddingGradient' column='price_bidding_gradient'/> <result property='taxRate' column='price_tax_rate'/> <result property='taxFreePrice' column='price_tax_free_price'/> <result property='reservePrice' column='price_reserve_price'/></collection> <!-- property表示集合類型屬性名稱,ofType表示集合中的對象是什么類型 --><collection property='resourceItem' ofType='com.ouyeel.chem.bdt.entity.ResourcesItemDto'> <result property='productName' column='item_product_name'/> <result property='productNo' column='item_product_no'/> <result property='packages' column='item_packages'/> <result property='originPlace' column='item_origin_place'/> <result property='warehouseName' column='item_warehouse'/> <result property='pieceUnit' column='item_piece_unit'/> <result property='tradingWeight' column='item_trading_weight'/></collection> </resultMap>mybatis參數為對象中包含list情況處理

mybatis是一個非常好用且靈活的持久層框架,但也正是因為太過靈活,導致有時候參數很難整理。我把我在項目中遇到的一個特殊情況列出來,希望下次再碰到時,也有個印象。

實體類如下:

package com.kxlive.erp.sc.stock.vo; import java.util.Date;import java.util.List; import org.springframework.format.annotation.DateTimeFormat; import com.kxlive.erp.sc.stock.po.PurchaseDeliver; public class QueryPurchaseDeliverVo extends PurchaseDeliver{ private Long merchantId;private Long stockId;@DateTimeFormat(pattern = 'yyyy-MM-dd')private Date startTime;//發貨開始時間@DateTimeFormat(pattern = 'yyyy-MM-dd')private Date endTime;//發貨結束時間 private Integer page;//當前頁private Integer rows;//每頁記錄數private String stockName;//倉庫名private String supplierName;//供應商名稱private List<Long> condSupplierIds;//供應商IDsprivate List<Integer> condStatuss;//狀態spublic Date getStartTime() {return startTime;}public void setStartTime(Date startTime) {this.startTime = startTime;} public Date getEndTime() {return endTime;} public void setEndTime(Date endTime) {this.endTime = endTime;} public Integer getPage() {return page;} public void setPage(Integer page) {this.page = page;} public Integer getRows() {return rows;} public void setRows(Integer rows) {this.rows = rows;} public String getStockName() {return stockName;} public void setStockName(String stockName) {this.stockName = stockName;} public String getSupplierName() {return supplierName;} public void setSupplierName(String supplierName) {this.supplierName = supplierName;} public List<Long> getCondSupplierIds() {return condSupplierIds;} public void setCondSupplierIds(List<Long> condSupplierIds) {this.condSupplierIds = condSupplierIds;} public List<Integer> getCondStatuss() {return condStatuss;} public void setCondStatuss(List<Integer> condStatuss) {this.condStatuss = condStatuss;} public Long getMerchantId() {return merchantId;} public void setMerchantId(Long merchantId) {this.merchantId = merchantId;} public Long getStockId() {return stockId;} public void setStockId(Long stockId) {this.stockId = stockId;} }

這里的實體類中,包含了一個List對象,所以在寫xml文件的時候多少對我這種菜鳥有點難度。

<select resultMap='purchaseResultMap'> selectt2. name stock_name,t3. supplier_name, t1.*fromT_SC_PURCHASE_DELIVER t1left join T_SC_STOCK t2 on t1.purchase_stock_id = t2.idleft join T_SC_SUPPLIER t3 on t1.supplier_id = t3.id <where> <if test='queryCondition.ifDel != null'> and t1.if_del=#{queryCondition.ifDel,jdbcType=INTEGER} </if> <if test='queryCondition.condSupplierIds != null'> and t1.supplier_id in <foreach collection='queryCondition.condSupplierIds' item='supplierId' index='index' separator=',' open='(' close=')'> #{queryCondition.condSupplierIds[${index}],jdbcType=BIGINT} </foreach> </if> <if test='queryCondition.condStatuss != null'> and t1.status in <span style='color:#ff0000;'><foreach collection='queryCondition.condStatuss' item='status' separator=',' index='index' open='(' close=')'> #{queryCondition.condStatuss[${index}],jdbcType=INTEGER} </foreach></span> </if> <if test='queryCondition.merchantId != null'> and t1.merchant_id=#{queryCondition.merchantId,jdbcType=BIGINT} </if><if test='queryCondition.stockId != null'> and t1.purchase_stock_id=#{queryCondition.stockId,jdbcType=BIGINT} </if> <if test='queryCondition.startTime != null'> <![CDATA[ and DATE_FORMAT(t1.create_time, ’%Y-%m-%d’) >= DATE_FORMAT(#{queryCondition.startTime}, ’%Y-%m-%d’)]]> </if> <if test='queryCondition.endTime != null'> <![CDATA[ and DATE_FORMAT(t1.create_time, ’%Y-%m-%d’) <= DATE_FORMAT(#{queryCondition.endTime}, ’%Y-%m-%d’)]]> </if> <if test='queryCondition.name != null and queryCondition.name != ’’ '> and t1.name like CONCAT(’%’, #{queryCondition.name, jdbcType=VARCHAR}, ’%’) </if> <if test='queryCondition.deliverNo != null'> and t1.deliver_no like CONCAT(’%’, #{queryCondition.deliverNo, jdbcType=VARCHAR}, ’%’) </if> </where> order by t1.create_time desc </select>

標紅的地方,即為應用。在foreach循環中,引用index作為list的下標,這樣即可將對象中的所有數據取出。

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Mybatis 數據庫
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
午夜精品成人av| 欧美日韩亚洲国产精品| 欧美片第1页综合| 中文字幕av一区二区三区人| 国产日韩一区二区三区在线播放| 最新亚洲国产| 夜鲁夜鲁夜鲁视频在线播放| 欧美xxxx性| 欧美精品91| 国产精品日韩精品在线播放| 日韩国产欧美三级| 国产精品porn| 久久九九99| 婷婷成人av| 天堂网av成人| 亚洲少妇在线| 国产欧美日韩精品一区二区三区| 欧美日韩国产高清| 福利精品在线| 日本在线不卡视频一二三区| 久久九九精品| 精品视频在线一区二区在线| 久久天堂精品| 中文无码久久精品| 欧美一区二区三区高清视频| 美女性感视频久久| 日韩午夜一区| 精品日韩一区| 精品日韩毛片| 中文字幕av一区二区三区四区| 久久高清国产| 婷婷久久免费视频| 日韩高清欧美激情| 中文字幕日韩亚洲| 欧美香蕉视频| 日韩视频不卡| 日韩欧美一区二区三区免费看| 六月丁香综合| 日本不卡在线视频| 久久99久久久精品欧美| 欧美国产中文高清| 国产精品sm| 久久精品国产亚洲夜色av网站| 日韩精品电影| 日韩一区欧美| 亚洲精品欧美| 日韩av黄色在线| 日韩精品不卡一区二区| 国产日韩一区二区三区在线| 欧美久久精品| 国产一区二区三区不卡视频网站| 欧美精品三级在线| 亚洲精品在线国产| 日本精品久久| 综合一区在线| 久久中文字幕二区| 欧美69视频| 麻豆91精品视频| 国产高清不卡| 日韩精品久久理论片| av中文资源在线资源免费观看| 日韩在线二区| 日本一二区不卡| 国产精品theporn| 国产精品a级| 亚洲久久一区| 亚洲激情婷婷| 日韩精品一级二级| 婷婷五月色综合香五月| 日韩三级久久| 国产精品videossex久久发布| 蜜桃精品视频| 国产v综合v| 亚洲一区二区三区免费在线观看| 亚洲色图国产| 免费一区二区三区在线视频| 国产va在线视频| 激情欧美国产欧美| 国产一区二区三区四区大秀| av在线最新| 久久精品国产亚洲aⅴ| 欧美精品一卡| 在线视频亚洲| 爽好多水快深点欧美视频| 精品网站999| 日韩激情综合| 黄色国产精品| 激情欧美一区| 水野朝阳av一区二区三区| 欧美性感美女一区二区| 精品丝袜久久| 国产精品久久久久av蜜臀| 精品精品国产三级a∨在线| 黄色精品网站| 日韩一区精品视频| 久久高清免费观看| 国产aa精品| 亚洲成人一区在线观看| 91精品在线观看国产| 国产黄色一区| 国产91一区| 欧美日韩精品一区二区三区在线观看| 麻豆久久久久久| 极品裸体白嫩激情啪啪国产精品| 五月天综合网站| 国产在线日韩精品| 婷婷精品在线观看| 欧美成人基地 | 免费在线看一区| 日本久久综合| 欧美私人啪啪vps| 亚洲欧美日韩国产| 91精品久久久久久久久久不卡| 日本精品久久| 亚洲在线久久| 久久福利一区| 午夜欧美精品| 特黄毛片在线观看| 日韩和欧美的一区| 久久久久欧美精品| 成人国产综合| 国产成人免费精品| 欧美aⅴ一区二区三区视频| 国产美女精品| 蜜臀a∨国产成人精品| 国产国产精品| 亚洲在线一区| 黄色成人在线网址| 精品三级av| 日韩综合在线| 精品国模一区二区三区| 色婷婷精品视频| 免费av一区| 免费视频一区二区| 日韩综合一区二区三区| 日本欧美一区二区在线观看| 国产一级成人av| 久久97视频| 国产欧洲在线| 国产在线成人| 蜜臀精品一区二区三区在线观看 | 韩日一区二区| 久久精品青草| 蜜桃av一区二区在线观看| 色8久久久久| 精品一区二区三区视频在线播放 | 国产精品中文| 国产一区二区三区视频在线| 欧美亚洲国产激情| 亚洲精品无吗| 久久精品一区二区国产| 欧洲一级精品| 综合在线一区| 精品国产日韩欧美精品国产欧美日韩一区二区三区 | 精品久久亚洲| 日韩影院精彩在线| 久久精品国产一区二区| 在线精品小视频| 国产日韩一区二区三区在线| 国产亚洲一区二区手机在线观看| 免费精品视频最新在线| 国产一区二区视频在线看| 国产精品毛片一区二区三区| 麻豆91在线播放| 亚洲一区二区三区四区电影| 亚洲一区资源| 欧美一级网址| 99久久九九| 欧美一级二级视频| 亚洲午夜av| 日韩国产欧美| 久久亚洲道色| 97成人在线| 视频一区免费在线观看| 日韩在线观看| 麻豆视频一区二区| 亚洲精品日本| 黄色日韩在线| 亚洲成人精品| 日本久久精品| 精品资源在线| 免费精品一区| 国产精品免费不| 中文精品电影| 免费精品视频| 亚洲欧美日韩一区在线观看| 国产综合色区在线观看| 日韩成人精品一区| 国产不卡精品在线| 欧美aⅴ一区二区三区视频| 国产精品一区三区在线观看| 日韩在线网址| 亚洲精品在线二区| 亚洲a级精品| 日韩欧美在线精品| 青青草精品视频| 国产精品亚洲人成在99www| 国产私拍福利精品视频二区| 婷婷成人av| 欧美一区网站|