亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

請問老師,mybatis-plus中有多表連接動態條件查詢的優化方案嗎

jpa對單表操作很方便,但是項目中如果經常出現表連接動態條件分頁查詢的需求,按mybatis的方式就是去xml中寫sql實現,比較繁瑣,也很重要,老師能否講解一下遇到這種需求怎么辦,有沒有更優美的做法可以使用呢

正在回答

1 回答

? ? ? 多表聯查可以既使用xml或@select注解的方式寫sql,然后還能使用MP的條件構造器,這種方式,我個人認為挺優雅的。給你舉個例子:

? ? ? ?MP自帶的CRUD操作是針對單表操作的,如果要操作多表,可以寫自定義sql。

給你舉個使用條件構造器的多表sql例子,可以寫在xml中或注解中,下面的是用xml的寫法:

<select?id="mySelectList"?resultType="User">
????select?u.*,r.role_name?from?user?u?inner?join?role?r?on?u.role_id?=?r.role_id?${ew.customSqlSegment}
</select>

對應的Mapper接口中的方法定義:

List<User>?mySelectList(@Param(Constants.WRAPPER)?Wrapper<User>?wrapper);

? ? ? ?返回值可以是VO。也可以是實體類,但要要記住,如果用實體類接返回值,實體中非該實體對應表的數據庫字段的屬性上要標注@TableField(exist = false),如果使用了條件構造器,條件構造器的字段名別忘了帶別名。

2 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

請問老師,mybatis-plus中有多表連接動態條件查詢的優化方案嗎

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號