java jackson 将对象转json时,忽略子对象的某个属性操作
我就废话不多说了,大家还是直接看代码吧~
//父对象 public class user implements java.io.Serializable { @JsonIgnoreProperties(value={"addressId"})//在解析成json时,忽略子属性的addressId字段 private Address address; private String username; //......... } //子对象 public class Address implements java.io.Serializable { private int addressId; private String address; private String phone; //.......... } //注:当对象是hibernate查出来的代理对象时,一对多对象会给子对象注入handler和hibernateLazyInitializer属性,如果给jackson解析就会报错 //在一对多或多对一字段前加上@JsonIgnoreProperties(value={"handler","hibernateLazyInitializer"})即可
补充知识:SpringMVC 返回实体对象时屏蔽某些属性
SpringMVC 可以直接已JSON的结果返回实体对象,可是返回时是所有属性与属性值都会一并返回,
怎样才能屏蔽某些属性?方法很简单,只要在实体对象类中要屏蔽的属性值上加 @JsonIgnore 注解,如:
@JsonIgnore
private String authorPassword;
属性即可被屏蔽,就不用担心有该属性与属性值返回到客户端了。
另外,如果仅仅从 MyBatis 的 mapper 里面的 select 语句中只选需要的字段而不选需要被屏蔽的字段,
这种方法行不通,因为最后还是会返回所有属性,只不过未被选中的字段会有 null 的属性值。
以上这篇java jackson 将对象转json时,忽略子对象的某个属性操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。
相关推荐
-
jackson 实体转json 为NULL或者为空不参加序列化(实例讲解)
使用jackson进行序列化时,往往会遇到后台某个实体对象的属性为null,当序列化成json时对应的属性也为null:这样在某些前端组件上应用该json对象会报错.(例如:echarts) 下面总结了两种方法,解决了当属性为null时不参与序列化: 方法一: 1.实体上使用如下注解 @JsonInclude(Include.NON_NULL) 将该标记放在属性上,如果该属性为NULL则不参与序列化 :如果放在类上边,那对这个类的全部属性起作用. 具体取值有: //Include.Include
-
Jackson序列化和反序列化忽略字段操作
一.设置Jackson序列化时只包含不为空的字段 new ObjectMapper().setSerializationInclusion(Include.NON_NULL); 二.设置在反序列化时忽略在JSON字符串中存在,而在Java中不存在的属性 new ObjectMapper.disable(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES); 三.Jackson序列化时忽略字段的方式 1.方式一:FilterProvider a)在需
-
java中实体类和JSON对象之间相互转化
在需要用到JSON对象封装数据的时候,往往会写很多代码,也有很多复制粘贴,为了用POJO的思想我们可以装JSON转化为实体对象进行操作 package myUtil; import java.io.IOException; import myProject.Student; import myProject.StudentList; import org.codehaus.jackson.map.ObjectMapper; import org.json.JSONArray; import or
-
java jackson 将对象转json时,忽略子对象的某个属性操作
我就废话不多说了,大家还是直接看代码吧~ //父对象 public class user implements java.io.Serializable { @JsonIgnoreProperties(value={"addressId"})//在解析成json时,忽略子属性的addressId字段 private Address address; private String username; //......... } //子对象 public class Address imp
-
Java对象转JSON时动态的增删改查属性详解
1. 前言 日常开发中少不了JSON处理,少不了需要在JSON中添加额外字段或者删除特定字段的需求.今天我们就使用Jackson类库来实现这个功能. 2. JSON字符串增加额外字段 假如我们有这样结构的JSON: { "username":"felord.cn", "age":18 } 期望增加一个性别字段gender: { "username": "felord.cn", "age"
-
Java反射 JavaBean对象自动生成插入,更新,删除,查询sql语句操作
通过反射根据提供的表名.POJO类型.数据对象自动生成sql语句. 如名为 User 的JavaBean与名为 user 的数据库表对应,可以提供一个封装有数据的User对象user,根据user中含有的数据自动生成sql语句. 1.生成插入语句(插入user中包含的非空数据的语句): String insertSql = getInsertSql("user", User.class, user); 2.生成更新语句(user中id不能为空): String updateSql =
-
Java开发中POJO和JSON互转时如何忽略隐藏字段的问题
1. 前言 在Java开发中有时候某些敏感信息我们需要屏蔽掉,不能被消费这些数据的客户端知道.通常情况下我们会将其设置为null或者空字符 "",其实还有其它办法,如果你使用了Jackson的话.接下来我将以一个实际场景来告诉你可以怎么做. 2. Jackson如何忽略字段 这里都以JSON序列化为例.假如我们在业务中需要返回用户信息,已有的POJO是这样的: import lombok.Data; /** * @author felord.cn */ @Data public cla
-
实体类或对象序列化时,忽略为空属性的操作
第一种,在配置文件配置 在application.xml直接配置,这种方式是全局配置,所有返回给前端对象的属性为null或""都不进行序列化: spring: jackson: #实体类转json时字段为null不参与序列化 default-property-inclusion: NON_EMPTY default-property-inclusion 常用的4种类型 ALWAYS 默认 NON_DEFAULT 属性为默认值不序列化 NON_EMPTY 属性为 ""
-
使用GSON库转换Java对象为JSON对象的进阶实例详解
对List和map等结构的常用转换操作基本上可以满足我们处理的绝大多数需求,但有时项目中对json有特殊的格式规定.比如下面的json串解析: [{"tableName":"students","tableData":[{"id":1,"name":"李坤","birthDay":"Jun 22, 2012 9:54:49 PM"},{"
-
springboot post接口接受json时,转换为对象时,属性都为null的解决
目录 背景 解决心路历程 背景 在接口请求过程中,传递json对象,springboot转换为实体VO对象后,所有属性都为null. post请求: 后台接收请求: 当时就懵逼了- 解决心路历程 查看springboot默认的HttpMessageConverter @Configuration @Component public class AppWebConfiguration implements WebMvcConfigurer { /** * 重写添加拦截器方法并添加配置拦截器 * *
-
spring boot @ResponseBody转换JSON 时 Date 类型处理方法【两种方法】
spring boot @ResponseBody转换JSON 时 Date 类型处理方法[两种方法],Jackson和FastJson两种方式. spring boot @ResponseBody转换JSON 时 Date 类型处理方法 ,这里一共有两种不同解析方式(Jackson和FastJson两种方式) 第一种方式:默认的json处理是 jackson 也就是对configureMessageConverters 没做配置时 mybatis数据查询返回的时间,是一串数字,如何转化成时间.
-
js实现的xml对象转json功能示例
本文实例讲述了js实现的xml对象转json功能.分享给大家供大家参考,具体如下: 支持无限级别xml结构对象转json,并且支持任意标签属性转json(兼容ie8等浏览器) xml字符串转xml对象: function loadXml(str) { if (str == null) { return null; } var doc = str; try{ doc = createXMLDOM(); doc.async = false; doc.loadXML(str); }catch(e){
-
对象转Json字符串时如何忽略指定属性
目录 FastJson转Json字符串时,忽略指定属性 JackSon忽略字段 Jackson Json与对象转换的几个配置笔记 FastJson转Json字符串时,忽略指定属性 使用注解@JSONField 以下Bean package com.gomefinance.esign; import com.alibaba.fastjson.annotation.JSONField; import lombok.Getter; import lombok.Setter; import java.i
随机推荐
- VirtualBox 在Centos 7 中安装增强功能图解 (共享文件夹)
- javascript版的in_array函数(判断数组中是否存在特定值)
- ASP.NET Gridview 中使用checkbox删除的2种方法实例分享
- PHP中的traits实现代码复用使用实例
- 解析CodeIgniter自定义配置文件
- [asp]怎么添加验证码的解决方法
- 基于Vue实现支持按周切换的日历
- JavaScript 格式字符串的应用
- JS实现先显示大图后自动收起显示小图的广告代码
- python实现批量监控网站
- php实现获取文章内容第一张图片的方法
- Ruby语法笔记
- 利用Node.js对文件进行重命名
- js命名空间写法示例
- 从阿里妈妈发现的几个不错的表单验证函数
- Node.js开发指南中的简单实例(mysql版)
- Mybatis接口式编程的原理
- 特络伊木马如何利用文件关联和设置名
- 网站源文件被注入了<iframe>代码—ARP欺骗的木马病毒攻击
- java URL 获取PHP JSON 数据