請問老師,mybatis-plus中有多表連接動態(tài)條件查詢的優(yōu)化方案嗎
jpa對單表操作很方便,但是項目中如果經(jīng)常出現(xiàn)表連接動態(tài)條件分頁查詢的需求,按mybatis的方式就是去xml中寫sql實現(xiàn),比較繁瑣,也很重要,老師能否講解一下遇到這種需求怎么辦,有沒有更優(yōu)美的做法可以使用呢
jpa對單表操作很方便,但是項目中如果經(jīng)常出現(xiàn)表連接動態(tài)條件分頁查詢的需求,按mybatis的方式就是去xml中寫sql實現(xiàn),比較繁瑣,也很重要,老師能否講解一下遇到這種需求怎么辦,有沒有更優(yōu)美的做法可以使用呢
2020-04-25
舉報
2020-04-28
? ? ? 多表聯(lián)查可以既使用xml或@select注解的方式寫sql,然后還能使用MP的條件構造器,這種方式,我個人認為挺優(yōu)雅的。給你舉個例子:
? ? ? ?MP自帶的CRUD操作是針對單表操作的,如果要操作多表,可以寫自定義sql。
給你舉個使用條件構造器的多表sql例子,可以寫在xml中或注解中,下面的是用xml的寫法:
對應的Mapper接口中的方法定義:
? ? ? ?返回值可以是VO。也可以是實體類,但要要記住,如果用實體類接返回值,實體中非該實體對應表的數(shù)據(jù)庫字段的屬性上要標注@TableField(exist = false),如果使用了條件構造器,條件構造器的字段名別忘了帶別名。