• MyBatis-Plus排除不必要的字段


    查询学生信息排除年龄列表 📚🔍

    使用MyBatis-Plus排除某些字段。如果你想要进行查询,但又不需要包含某些字段,那么这个功能将非常适合你。🔍🎓📝

    1. 学生信息查询-排除年龄列表

    在使用 MyBatis-Plus 进行查询时,我们可以使用以下示例代码来选择不必要的字段:

    return lambdaQuery()
           .select(Student.class , info -> ! info.getColumn().equals("age"))
           .list();
    
    • 1
    • 2
    • 3

    在这个 Lambda 表达式中,info 是一个 TableFieldInfo 对象,表示实体类中的一个字段信息。getColumn() 方法返回字段的名称。

    !info.getColumn().equals("age") 的含义是判断字段名称是否等于 “age”,如果字段名称不等于 “age”,则条件判断结果为 true,表示选择该列进行查询;如果字段名称等于 “age”,则条件判断结果为 false,表示不选择该列进行查询, ! 运算符表示逻辑非,将判断结果取反。

    因此,这段代码的作用是选择字段名称不等于 “age” 的列进行查询,而排除了名为 “age” 的列。

    这个功能的好处在于我们可以轻松地进行字段的选择,而无需编写 SQL 语句。让我们看看返回结构:

    在这里插入图片描述

    2.设定默认属性非空规则 📄✨

    如果你不想给前端返回空值,那么你可以使用以下配置来设定默认属性的非空规则:

    spring:
      jackson:
        defaultPropertyInclusion: NON_NULL
    
    • 1
    • 2
    • 3

    当我们使用 Jackson 将 Java 对象序列化为 JSON 时,可以通过设置 defaultPropertyInclusion 属性来指定默认的属性包含策略。属性的包含策略有以下几种选项:

    • ALWAYS:包含所有属性,包括 null 值。
    • NON_NULL:只包含非空属性。
    • NON_EMPTY:只包含非空且非空字符串属性。
    • NON_DEFAULT:只包含在对象中明确设置过值的属性。

    通过将 defaultPropertyInclusion 设置为 NON_NULL,我们可以确保在序列化为 JSON 时,只有非空的属性会被包含在内,而 null 值将不会被返回给前端。这个设置非常方便,可以有效地优化前端的数据处理。

    让我们看看下面的返回结果,更好地理解这个设置的作用:

    在这里插入图片描述

    结语 📝🎉

    MyBatis-Plus 的强大功能确实查询提供了很大的便利。通过选择不必要的字段以及设定默认属性的非空规则,我们可以更加灵活地操作查询结果,并优化前端数据的展示!👍📢

  • 相关阅读:
    ZYNQ自带I2S_IP核分析
    关于ETL的两种架构(ETL架构和ELT架构)
    Centos7安装mysql+keepalived 高可用环境
    05-MogoDB执行计划
    从零开始学习 Java:简单易懂的入门指南之Stream流(二十七)
    深信服云桌面用户忘记密码后的处理
    Centos7软件包管理(rpm、yum)
    Flutter 中使用 extension 使项目更具可读性和效率 01
    Hadoop-Hive-Spark-离线环境搭建
    宏定义里面为什么要加括号?
  • 原文地址:https://blog.csdn.net/Bilal_0/article/details/132707817