当前位置: 首页 > news >正文

简易制作网站wordpress柒主题

简易制作网站,wordpress柒主题,免费下载应用软件,校园安全网站建设在日常的Java开发中#xff0c;我们经常需要将Java对象序列化为JSON格式#xff0c;以便进行数据传输或存储。然而#xff0c;有时候我们并不希望在JSON中包含某些空值或不必要的字段#xff0c;这不仅会增加数据的冗余性#xff0c;还可能对后续的处理造成困扰。Jackson库…在日常的Java开发中我们经常需要将Java对象序列化为JSON格式以便进行数据传输或存储。然而有时候我们并不希望在JSON中包含某些空值或不必要的字段这不仅会增加数据的冗余性还可能对后续的处理造成困扰。Jackson库中的JsonInclude注解为我们提供了一种优雅的解决方案。今天我们就来深入探讨一下JsonInclude(JsonInclude.Include.NON_EMPTY)的使用方法和实际效果。 一、JsonInclude的背景与作用 JsonInclude注解是Jackson库提供的一个强大工具用于控制对象序列化时字段的包含规则。其中JsonInclude.Include.NON_EMPTY选项可以排除那些被认为是“空”的值。具体来说以下几种情况会被视为“空” Null值字段值为null。空字符串字段值为。空集合或数组例如List、Map、数组等其长度或isEmpty()方法返回true。 通过使用JsonInclude(JsonInclude.Include.NON_EMPTY)我们可以轻松地过滤掉这些空值使生成的JSON更加简洁和清晰。 二、实例解析 为了更好地理解JsonInclude(JsonInclude.Include.NON_EMPTY)的作用我们来看一个具体的例子。 1. 定义Java对象 首先我们定义一个Employee类该类包含了一些常见的字段如姓名、部门、地址、电话号码列表和薪资等。 package com.logicbig.example;import com.fasterxml.jackson.annotation.JsonInclude; import java.math.BigDecimal; import java.util.List; import java.util.concurrent.atomic.AtomicReference;JsonInclude(JsonInclude.Include.NON_EMPTY) public class Employee {private String name;private String dept;private String address;private ListString phones;private AtomicReferenceBigDecimal salary;// Getter和Setter方法省略 }在Employee类上我们添加了JsonInclude(JsonInclude.Include.NON_EMPTY)注解这表示在序列化时所有空值字段都将被排除。 2. 主程序代码 接下来我们编写一个主程序来测试Employee类的序列化效果。 import com.fasterxml.jackson.databind.ObjectMapper; import java.io.IOException; import java.util.ArrayList;public class ExampleMain {public static void main(String[] args) throws IOException {Employee employee new Employee();employee.setName(Trish);employee.setDept();employee.setAddress(null);employee.setPhones(new ArrayList());employee.setSalary(new AtomicReference());ObjectMapper om new ObjectMapper();String jsonString om.writeValueAsString(employee);System.out.println(jsonString);} }在主程序中我们创建了一个Employee对象并为其设置了部分字段。其中dept字段为空字符串address字段为nullphones字段是一个空的ArrayListsalary字段是一个未初始化的AtomicReference。 3. 运行结果 运行上述代码后输出结果如下 {name:Trish}可以看到只有name字段被序列化到JSON中其他空值字段如dept、address、phones和salary都被成功排除。 三、对比其他注解选项 为了更直观地理解JsonInclude(JsonInclude.Include.NON_EMPTY)的效果我们可以对比其他几种注解选项。 1. 不使用JsonInclude注解 如果我们在Employee类中不使用JsonInclude注解那么序列化结果将是 {name:Trish,dept:,address:null,phones:[],salary:null}可以看到所有字段都被序列化到JSON中包括空字符串、null值、空集合和未初始化的AtomicReference。 2. 使用JsonInclude(JsonInclude.Include.NON_NULL) 如果我们将JsonInclude注解的值改为JsonInclude.Include.NON_NULL那么序列化结果将是 {name:Trish,dept:,phones:[],salary:null}在这种情况下只有null值字段被排除空字符串和空集合仍然会被序列化。 3. 使用JsonInclude(JsonInclude.Include.NON_ABSENT) 如果我们将JsonInclude注解的值改为JsonInclude.Include.NON_ABSENT那么序列化结果将是 {name:Trish,dept:,phones:[]}在这种情况下null值字段和未初始化的AtomicReference字段被排除但空字符串和空集合仍然会被序列化。 四、总结 通过上述实例和对比我们可以清楚地看到JsonInclude(JsonInclude.Include.NON_EMPTY)的强大功能。它能够帮助我们过滤掉所有“空”值字段从而生成更加简洁、高效的JSON数据。在实际开发中合理使用JsonInclude注解可以大大提升数据序列化的质量减少不必要的数据传输和存储开销。 此外Jackson库还提供了丰富的注解和功能值得我们深入学习和探索。希望本文能够帮助你更好地理解和应用JsonInclude注解提升你的开发效率和代码质量。
http://www.tj-hxxt.cn/news/220062.html

相关文章:

  • 域名到期换个公司做网站上海金融网站制作公
  • 聊城手机站网站公司电话wordpress视频教学
  • 工信部网站备案平台思明建设局网站
  • 专业响应式网站制作哪个网站可以做自由行地图
  • 网站怎么做弹出表单彩票网站建设哪里
  • 设计网站的管理系统网站活动怎么做的
  • 昭通seoseo从0到1怎么做
  • 徐典超 网站建设产品推广文案
  • 微信的微网站模板下载不了哪个网站做的比较好
  • 大宗商品价格查询网站企业团建公司
  • 网站建设计划表郑州做网站公司天强科技
  • 制作购物网站需要多少钱无锡seo优化
  • 中铁广州建设有限公司网站安顺市网站建设
  • 施工企业财务经理年终总结网站栏目页优化
  • 福建省城乡和建设厅网站p2p网站建设的步骤过程
  • 龙岩市建设局网站泉州软件开发公司
  • 宁波环保营销型网站建设如何建立一个网站
  • 国内论坛网站有哪些公司网站没备案
  • 大学什么专业做网站自适应网站建设都找全网天下
  • 洞头建设局网站新网站怎么做优化
  • 织梦网站怎么做301跳转怎么给网站做优化
  • 网站建设与管理课程实训天猫商城网官网
  • 河南网站公司com网站是用什么做的
  • 伪装学渣无极网站公司网站建设的申请
  • 总结企业网站建设的流程手机做免费个人网站
  • 中宁建设局网站中国十大奇迹工程
  • 做网站百度收费吗汕头制作网站软件
  • 网站建设需要些什么设备wordpress投稿
  • 网站建设数据处理wordpress添加返回顶部
  • 建网站要多少钱一台大宗商品采购平台