springboot 如何使用jackson来处理实体类

 更新时间:2021年10月19日 10:41:45   作者:前方太黑暗  
这篇文章主要介绍了springboot使用jackson来处理实体类的操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

使用jackson来处理实体类

1、常用框架:阿里fastjson,谷歌gson等

在大量数据情况下对比性能:

Jackson > fastjson > Gson > Json-lib。

2、在现在的开发中,会有很多调用接口的情况

比如前后台分离采用json格式,或者调用第三方API等。

小编就以User为例,来讲几个例子:

实体类

user实体

controller

返回结果

可以看见User整个信息都被暴露出去了,密码、手机号、而且生日的格式还是原生的。

如何处理呢?

我们可以使用@JsonIgnore来忽略某个字段

JsonIgnore

使用@JsonFormat来格式化日期

JsonFormat

出于安全考虑,不让别人猜出我们的实体字段来映射出数据库字段,我们还可以使用

@JsonProperty来起别名

JsonProperty

说这几个常用的,还有比如@JsonInclude(JsonInclude.Include.NON_NULL)空字段不返回,大家可以问问度娘,百度jackson注解。

Springboot Jackson的操作

有一段时间没写博客了,虽然是菜鸟一枚但毕竟总要有东西记录学习的,我相信有志者事竟成。今天在工作中使用Jackson转换了一个javabean,传到测试服上之后发现日期少了一天,使用的是@JsonFormat注解。

这里写了一个简单的小demo记录一下

表数据:

  

实体类属性:

  

controller层就省略掉了,就是调用dao进行数据查询。  

使用postman请求结果如下:

  

发现时间是2018/11/15,但数据库中是2018-11-16,少了一天,原因是在进行日期格式化的时候没有加入要格式化日期的时区,中国的时区是东八区,

需要加入timezone="GMT+8"

  

再次测试:

  

这次就可以了!

另外还有几个常用的注解:

  • @JsonIgnore: 在转换的时候忽略该字段;
  • @JsonProperty:将该字段的名称在转换成json格式后以该名称显示;
  • @JsonIgnorePeroperty({"id","name"}):忽略该注解所包含的全部属性,里面的参数是一个数组,会把包含的名称的全部字段都忽略掉,包括子类;
  • @JsonInclude(Include.NON_EMPTY):在属性不为空时序列化此字段,对于字符串,即null或空字符串;

用到的暂时就这些了。以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Eclipse代码格式化设置简单介绍

    Eclipse代码格式化设置简单介绍

    这篇文章主要介绍了Eclipse代码格式化设置简单介绍,具有一定参考价值,需要的朋友可以了解下。
    2017-10-10
  • 如何使用maven-helper插件解决jar包冲突问题

    如何使用maven-helper插件解决jar包冲突问题

    安装了Maven Helper插件,只要打开pom文件,就可以打开该pom文件的Dependency Analyzer视图,这篇文章主要介绍了使用maven-helper插件解决jar包冲突,需要的朋友可以参考下
    2024-05-05
  • 新手小白入门必学JAVA面向对象之多态

    新手小白入门必学JAVA面向对象之多态

    说到多态,一定离不开其它两大特性:封装和继承,下面这篇文章主要给大家介绍了关于新手小白入门必学JAVA面向对象之多态的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-02-02
  • JAVA使用ElasticSearch查询in和not in的实现方式

    JAVA使用ElasticSearch查询in和not in的实现方式

    今天小编就为大家分享一篇关于JAVA使用Elasticsearch查询in和not in的实现方式,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2018-12-12
  • MyEclipse到期破解代码分享

    MyEclipse到期破解代码分享

    前几天有个小伙伴咨询,使用的时候一直说myeclipse已过期,需要购买,如何解决?可以去网上搜搜注册码,但作为程序猿这么做简直太无趣,看看我们自己来解决这个问题
    2014-11-11
  • IDEA POJO开发神器之Groovy的使用详解

    IDEA POJO开发神器之Groovy的使用详解

    这篇文章主要介绍了IDEA POJO开发神器之Groovy的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • java实现压缩字符串和java字符串过滤

    java实现压缩字符串和java字符串过滤

    这篇文章主要介绍了java实现压缩字符串和java字符串过滤,需要的朋友可以参考下
    2014-04-04
  • SpringBoot解决跨域的超实用方案分享

    SpringBoot解决跨域的超实用方案分享

    这篇文章介绍了使用SpringBoot解决跨域问题的方法,并提供了详细的代码示例和解释,适合对跨域问题不太熟悉的读者,感兴趣的小伙伴跟着小编一起来学习吧
    2023-05-05
  • springboot+rabbitmq实现指定消费者才能消费的方法

    springboot+rabbitmq实现指定消费者才能消费的方法

    当项目部署到测试环境后,QA测试过程中,总是“莫名其妙”的发现所保存的用户付款单数据有问题。这篇文章主要介绍了springboot+rabbitmq实现指定消费者才能消费,需要的朋友可以参考下
    2021-11-11
  • 使用Spring自定义实现IOC和依赖注入(注解方式)

    使用Spring自定义实现IOC和依赖注入(注解方式)

    这篇文章主要介绍了使用Spring自定义实现IOC和依赖注入(注解方式),具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-08-08

最新评论