java json 多余属性_java 对象转json忽略某个属性

java json 多余属性_java 对象转json忽略某个属性1 FastJson 转 Json 字符串时 忽略指定属性 1 1 使用注解 JSONField 以下 Beanpackagec gomefinance esign importcom alibaba fastjson annotation JSONField importlombok Getter importlombok Setter importjava io Serializable

1、FastJson转Json字符串时,忽略指定属性

1.1使用注解@JSONField

以下Bean

package com.gomefinance.esign;

import com.alibaba.fastjson.annotation.JSONField;

import lombok.Getter;

import lombok.Setter;

import java.io.Serializable;

/

* 本地签署信息

* Created by JHAO on 2017/5/31.

*/

@Setter

@Getter

public class FastJsonInputBean implements Serializable {

// 合同模板ID

private String contractTemplateId;

// 合同号

private String contractId;

// Base64编码的合同

@JSONField(serialize = false)

private String contractImage;

private String contractVersion;

}

FastJsonInputBean inputBean = new FastJsonInputBean();

inputBean.setContractImage(“contractImage”);

inputBean.setContractTemplateId(“templateId”);

inputBean.setContractId(“comtractId”);

inputBean.setContractVersion(“contractVersion”);

System.out.println(“JSONField(serialize = false)忽略contractImage属性:”+JSON.toJSONString(inputBean));

打印结果:{“contractId”:”comtractId”,”contractTemplateId”:”templateId”,”contractVersion”:”contractVersion”}

1.2Filter指定序列化的字段

SimplePropertyPreFilter filter = new SimplePropertyPreFilter(FastJsonInputBean.class, “contractTemplateId”);

System.out.println(“filter忽略contractTemplateId属性:”+JSONObject.toJSONString(inputBean, filter));

打印结果:{“contractTemplateId”:”templateId”}

2、JackSon忽略字段

@JsonIgnoreProperties主键或者在字段上使用@JsonIgnore

package com.gomefinance.esign;

import com.alibaba.fastjson.annotation.JSONField;

import com.fasterxml.jackson.annotation.JsonIgnore;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;

import lombok.Getter;

import lombok.Setter;

import java.io.Serializable;

/

* 本地签署信息

* Created by JHAO on 2017/5/31.

*/

@Setter

@Getter

@JsonIgnoreProperties({“contractTemplateId”, “contractImage”})

public class JackSonInputBean implements Serializable {

// 合同模板ID

private String contractTemplateId;

// 合同号

@JsonIgnore

private String contractId;

// Base64编码的合同

private String contractImage;

private String contractVersion;

}

JackSonInputBean jackSonInputBean = new JackSonInputBean();

jackSonInputBean.setContractImage(“contractImage”);

jackSonInputBean.setContractTemplateId(“templateId”);

jackSonInputBean.setContractId(“comtractId”);

jackSonInputBean.setContractVersion(“contractVersion”);

ObjectMapper objectMapper = new ObjectMapper();

System.out.println(“JackSon JsonIgnore忽略contractId属性:”+objectMapper.writeValueAsString(jackSonInputBean));

打印结果:{“contractVersion”:”contractVersion”}

原文:https://blog.csdn.net/a/article/details/

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/230702.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Mybatis面试题(总结最全面的面试题!!!)

    Mybatis面试题(总结最全面的面试题!!!)什么是数据持久化?数据持久化是将内存中的数据模型转换为存储模型,以及将存储模型转换为内存中的数据模型的统称。例如,文件的存储、数据的读取等都是数据持久化操作。数据模型可以是任何数据结构或对象的模型、XML、二进制流等。当我们编写应用程序操作数据库,对表数据进行增删改查的操作的时候就是数据持久化的操作。Mybatis框架简介MyBatis框架是一个开源的数据持久层框架。它的内部封装了…

    2022年5月15日
    42
  • linux sendmail发送邮件_shell上传文件到服务器

    linux sendmail发送邮件_shell上传文件到服务器Sendmail是目前Linux系统下面用得最广的邮件系统之一,虽然它存在一些不足,不过,目前还是有不少公司在使用它。对它的学习,也能让我们更深的了解邮件系统的运作。下面我们就来看看sendmail邮

    2022年8月4日
    8
  • python函数详解_INDEX函数

    python函数详解_INDEX函数前言:一、函数的作用函数就是将一段具有独立功能的代码块整合到一个整体并命名,在需要的位置调用这个名称即可完成对应的需求。函数在开发过程中,可以更高效的实现代码重用。二、函数的使用步骤1.定义函数def函数名(参数):代码1代码2……2.调用函数函数名(参数)注意:不同的需求,参数可有可无。在Python中,函数必须先定义后使用。…

    2022年10月18日
    4
  • ArrayList底层实现原理「建议收藏」

    ArrayList底层实现原理「建议收藏」ArrayList简介ArrayList是我们开发中非常常用的数据存储容器之一,其底层是数组实现的,我们可以在集合中存储任意类型的数据,ArrayList是线程不安全的,非常适合用于对元素进行查找,效率非常高。源码分析创建了一个大小为0的数组,在后面会用到。声明了一个数组。ArrayList的无参构造方法,将前面声明创建的大小为0的数组赋给elementData数组。这是ArrayList的有参构造方法,传入一个int类型的变量,相当于我们在使用arrayList的时候指定list的大小

    2022年8月8日
    3
  • 多继承的概念和优缺点

    多继承的概念和优缺点解析 实际生活中 一些事物往往会拥有两个或两个以上事物的属性 为了解决这个问题 C 引入了多重继承的概念 C 允许为一个派生类指定多个基类 这样的继承结构被称做多重继承 举个例子 人 Person 可以派生出作者 Author 和程序员 Programmer 然而程序员作者同时拥有作家和程序员的两个属性 即既能编程又能写作 使用多重继承的例子程序如下 nbsp nbsp nbsp nbsp nbsp nbsp nbsp in

    2025年11月12日
    4
  • spring aop 切入问题

    spring aop 切入问题spring aop 切入问题

    2022年4月20日
    37

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号