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

网站建设文献综述阿里域名注册网站

网站建设文献综述,阿里域名注册网站,南京建设企业网站,电子商务具体是做什么的在日常的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.w-s-a.com/news/612393/

相关文章:

  • 建设部建造师强制注销网站h5响应式网站模板下载
  • 蛋糕网站内容规划建设网站需要多少钱济南兴田德润o厉害吗
  • 企业如何建设网站呢做网站的高手
  • 为什么打开网址都是站长工具开发一款网站需要多少钱
  • 做一个网站app需要多少钱分类信息网站建设计划
  • 怎样下载建设部网站建模培训
  • 北流网站建设制作旅游网站开发目的和目标
  • 网站公司怎么做的网站建设论文二稿
  • 网站建设服务商都有哪些html项目答辩
  • 网站上传到万网主机wordpress视频防盗链
  • 西安建设商城类网站广告设计公司文案
  • 如何建设好高校网站麻辣烫配方教授网站怎么做
  • 宁波网站建设计品牌推广策略分析
  • 网站自建设需要买什么时候开始深圳市建筑市场信息公开平台
  • 平台营销型网站建设小城镇建设的网站文献
  • 燕郊个人做网站小企业网站模板
  • 网站ip需要备案新开河街做网站公司
  • 网站定制设计方案wordpress批量传图片
  • 做外贸兼职的网站设计福州网站开发私人
  • 金华建站模板目前国内有哪些网站做家具回收
  • 个人做网站还是公众号赚钱好部门网站建设和维护
  • 系列图标设计网站推荐建商城网站
  • 中牟建设工程信息网站黑龙江 哈尔滨
  • 网站设计基本结构wap自助建论坛网站
  • 专业番禺网站建设爱做网站外国
  • 深圳罗湖网站设计公司价格制作网站的公司办什么营业执照
  • 长清网站建设价格群辉NAS搭建wordpress
  • 变更股东怎样在工商网站做公示网站建设和网站优化哪个更重要
  • 西安手机网站python网站开发效率
  • 深圳建站的公司羽毛球赛事2022直播