最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SpringBoot中MyBatis-Plus 查詢時(shí)排除某些字段的操作方法

 更新時(shí)間:2023年08月22日 10:01:29   作者:cloneme01  
這篇文章主要介紹了SpringBoot中MyBatis-Plus 查詢時(shí)排除某些字段的操作方法,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

SpringBoot中MyBatis-Plus 查詢時(shí)排除某些字段的操作方法

寫在前面

查詢時(shí)部分字段不想給前端顯示,怎么辦?

(1)使用SELECT方法,排除字段"password"

@Override
public Page<UserDO> list(String name, Integer status, Integer pageNo, Integer limit, Long adminId) throws ServiceException {
    QueryWrapper<UserDO> wrapper = new QueryWrapper<>();
    if (!ObjectUtils.isEmpty(name)) {
        wrapper.like("name", name);
    }
    if (status != null) {
        wrapper.eq("status", status);
    }
    wrapper.select(UserDO.class, user -> !user.getColumn().equals("password") && !user.getColumn().equals("salary"));
    wrapper.orderByDesc("id");
    return userMapper.selectPage(Page.div(pageNo, limit, UserDO.class), wrapper);
}
// 生成的SQL語句為:
SELECT id,presenter,qq,wx,mail,name,id_no,id_card_front,id_card_back,phone,
salt,ali_mp_open_id,wx_mp_open_id,wx_h5_open_id,wx_app_open_id,nickname,
avatar_url,province,city,county,level,gmt_vip_expire,birthday,gender,gmt_last_login,
last_login_ip,status,gmt_update,gmt_create 
FROM mcsx_user ORDER BY id DESC LIMIT ?

(2)使用SELECT方法,只顯示某些字段

@Override
public Page<UserDO> list(String name, Integer status, Integer pageNo, Integer limit, Long adminId) throws ServiceException {
    QueryWrapper<UserDO> wrapper = new QueryWrapper<>();
    if (!ObjectUtils.isEmpty(name)) {
        wrapper.like("name", name);
    }
    if (status != null) {
        wrapper.eq("status", status);
    }
    wrapper.select("id", "name", "level", "qq", "wx", "gmt_last_login");
    wrapper.orderByDesc("id");
    return userMapper.selectPage(Page.div(pageNo, limit, UserDO.class), wrapper);
}
// 生成的SQL語句為:
SELECT id,name,level,qq,wx,gmt_last_login FROM mcsx_user ORDER BY id DESC LIMIT ?

(3)使用@TableField(exist = false),排除某些字段

注:表示當(dāng)前屬性不是數(shù)據(jù)庫的字段,但在項(xiàng)目中必須使用,這樣的話在新增/查詢等使用BEAN時(shí),MyBatis-Plus都會(huì)忽略這個(gè)屬性,所以推薦使用方法1和方法2。

@Data
@ApiEntity(description = "用戶領(lǐng)域模型表")
@TableName("mcsx_user")
public class UserDO extends SuperDO {
    @ApiField(description = "推薦者")
    private Long presenter;
    @TableField(exist = false)
    @ApiField(description = "QQQQ號(hào)")
    private String qq;
    @TableField(exist = false)
    @ApiField(description = "微信號(hào)")
    private String wx;
    @ApiField(description = "電子郵箱")
    private String mail;
    @ApiField(description = "姓名")
    private String name;
    @ApiField(description = "身份證號(hào)")
    private String idNo;
    ...
}
// 生成的SQL語句為:
SELECT id,presenter,mail,name,id_no,id_card_front,id_card_back,phone,
salt,ali_mp_open_id,wx_mp_open_id,wx_h5_open_id,wx_app_open_id,nickname,
avatar_url,province,city,county,level,gmt_vip_expire,birthday,gender,gmt_last_login,
last_login_ip,status,gmt_update,gmt_create FROM mcsx_user ORDER BY id DESC LIMIT ?

mybatis-plus 查詢 queryWrapper 排除指定字段

void fun() {
    QueryWrapper<User> queryWrapper = new QueryWrapper<>();
    queryWrapper.lambda()
            .select(User.class, i -> !i.getProperty().equals("password")) //不查詢password字段
            .eq(User::getAccount, "zhangSan");
    User user = userService.getOne(queryWrapper);
    System.out.println(user);
}

到此這篇關(guān)于SpringBoot中MyBatis-Plus 查詢時(shí)排除某些字段的操作方法的文章就介紹到這了,更多相關(guān)MyBatis-Plus 查詢時(shí)排除某些字段內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 使用Java和Ehcache實(shí)現(xiàn)緩存策略的設(shè)置及示例代碼

    使用Java和Ehcache實(shí)現(xiàn)緩存策略的設(shè)置及示例代碼

    本文介紹了如何使用Java和Ehcache實(shí)現(xiàn)緩存策略,包括基本配置、緩存策略的設(shè)置以及示例代碼,感興趣的朋友跟隨小編一起看看吧
    2025-12-12
  • 方法參數(shù)屬性params,@PathVariable和@RequestParam用法及區(qū)別

    方法參數(shù)屬性params,@PathVariable和@RequestParam用法及區(qū)別

    這篇文章主要介紹了方法參數(shù)屬性params,@PathVariable和@RequestParam用法及區(qū)別說明,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-10-10
  • 使用Java實(shí)現(xiàn)文件夾的遍歷操作指南

    使用Java實(shí)現(xiàn)文件夾的遍歷操作指南

    網(wǎng)上大多采用java遞歸的方式遍歷文件夾下的文件,這里我不太喜歡遞歸的風(fēng)格,這篇文章主要給大家介紹了關(guān)于使用Java實(shí)現(xiàn)文件夾的遍歷操作的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-05-05
  • Spring Cloud Gateway 獲取請求體(Request Body)的多種方法

    Spring Cloud Gateway 獲取請求體(Request Body)的多種方法

    這篇文章主要介紹了Spring Cloud Gateway 獲取請求體(Request Body)的多種方法,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-01-01
  • 使用MyBatis進(jìn)行簡單的更新與查詢方式

    使用MyBatis進(jìn)行簡單的更新與查詢方式

    這篇文章主要介紹了使用MyBatis進(jìn)行簡單的更新與查詢方式,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-10-10
  • Java邏輯運(yùn)算符之&&、||?與&、?|的區(qū)別及應(yīng)用

    Java邏輯運(yùn)算符之&&、||?與&、?|的區(qū)別及應(yīng)用

    這篇文章主要介紹了Java邏輯運(yùn)算符之&&、||?與&、?|的區(qū)別及應(yīng)用的相關(guān)資料,分別是&&、||?與&、?|,并探討了它們在不同應(yīng)用場景中的表現(xiàn)和優(yōu)化效果,需要的朋友可以參考下
    2025-03-03
  • SpringBoot集成JmsTemplate(隊(duì)列模式和主題模式)及xml和JavaConfig配置詳解

    SpringBoot集成JmsTemplate(隊(duì)列模式和主題模式)及xml和JavaConfig配置詳解

    這篇文章主要介紹了SpringBoot集成JmsTemplate(隊(duì)列模式和主題模式)及xml和JavaConfig配置詳解,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-08-08
  • Java?Base64編碼方法詳解及實(shí)例解析

    Java?Base64編碼方法詳解及實(shí)例解析

    Base64是一種用于將二進(jìn)制數(shù)據(jù)轉(zhuǎn)換成文本數(shù)據(jù)的編碼方式,在本文中,我們介紹了Base64.encodeBase64String方法的用途和功能,它是Java語言中用于Base64編碼的一個(gè)重要工具,需要的朋友可以參考下
    2023-09-09
  • Java如何將若干時(shí)間區(qū)間進(jìn)行合并的方法步驟

    Java如何將若干時(shí)間區(qū)間進(jìn)行合并的方法步驟

    這篇文章主要介紹了Java如何將若干時(shí)間區(qū)間進(jìn)行合并的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-02-02
  • Spring示例講解條件注入方法

    Spring示例講解條件注入方法

    Spring支持按照條件來注入某些特定的bean,這也是Spring Boot實(shí)現(xiàn)自動(dòng)化配置的底層方法,文中的示例代碼講解詳細(xì),需要的可以參考一下
    2022-06-06

最新評(píng)論

开平市| 上犹县| 安义县| 峨眉山市| 琼海市| 岐山县| 康平县| 鸡西市| 旅游| 景宁| 宣武区| 财经| 井陉县| 宣武区| 昌邑市| 秦安县| 黑水县| 苍梧县| 清河县| 高青县| 宁海县| 南木林县| 保康县| 大埔区| 涟水县| 易门县| 宁安市| 嘉善县| 华蓥市| 金川县| 宜君县| 富民县| 郯城县| 贡觉县| 达州市| 彭州市| 望都县| 葵青区| 恩施市| 凤台县| 翁牛特旗|