@JSONField @JsonFormat @JsonProperty 使用场景

1.@JSONField 是com.alibaba.fastjson.annotation包下的

主要作用是在序列化/反序列化时控制key的名称,

@JSONField(name = "name_test")
private String name;

在使用fastjson JSONObject.toJSONString(object); 序列化后为: {“name_test”:”value”}

或者使用

@JSONField(format = "yyyy-MM-dd HH:mm:ss")
private Date time;

来控制序列化时的 时间格式

{“time”:”2022-02-23 14:23:43″}

2.@JsonFormat 是com.fasterxml.jackson.annotation包下的

主要作用是格式化对象时间字段到前端展示 用法:

@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private Date date;

controller方法 使用@ResponseBody 返回对象时,时间字段会按照你设置的 pattern来显示

主要作用当使用 @RequestBody 用java对象接收body对象参数时映射入参字段

例如你对接了一个外部接口, 他们传入的参数 为: {s_name:”123″}

此时你定义java对象时 属性名要为s_name 显然不符合驼峰规范,此时你只需要使用

@JsonProperty("s_name")
private String name;

这样传入的对象字段会自动映射

或者使用 @ResponseBody 返回java对象时映射对象和返回的json的字段

如对象

@JsonProperty("s_name")
private String name;

返回是别人接到的json会是 {“s_name”:”111″}

Original: https://www.cnblogs.com/loveCrane/p/15927234.html
Author: loveCrane
Title: @JSONField @JsonFormat @JsonProperty 使用场景

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/569737/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • MySQL性能优化的5个维度

    面试官如果问你:你会从哪些维度进行MySQL性能优化?你会怎么回答? 所谓的性能优化,一般针对的是MySQL查询的优化。既然是优化查询,我们自然要先知道查询操作要经过哪些环节,然后…

    Java 2023年6月7日
    075
  • 代码审查:从 ArrayList 说线程安全

    本文从代码审查过程中发现的一个 ArrayList 相关的「线程安全」问题出发,来剖析和理解线程安全。 案例分析 前两天在代码 Review 的过程中,看到有小伙伴用了类似以下的写…

    Java 2023年6月5日
    0107
  • 【Java面试】这应该是面试官最想听到的回答,Mysql如何解决幻读问题?

    “Mysql如何解决幻读问题”一个工作了4年小伙伴,去一个美团面试,遇到了这样一个问题。大家好,我是Mic,一个工作了14年的Java程序员关于这个问题,面…

    Java 2023年6月16日
    081
  • Virtualbox中不能为虚拟机打开一个新任务的原因及解决方法

    我最开始的时候还以为是因为我的虚拟机路径是中文导致的,后来才发现原因: 4.3.12 之后的版本增加了安全检查机制(以前会被病毒利用),如果有程序将DLL注入Vbox的进程就会报错…

    Java 2023年5月30日
    0107
  • leetcode 105. Construct Binary Tree from Preorder and Inorder Traversal 从前序与中序遍历序列构造二叉树(中等)

    一、题目大意 给定两个整数数组 preorder 和 inorder ,其中 preorder 是二叉树的先序遍历, inorder 是同一棵树的中序遍历,请构造二叉树并返回其根节…

    Java 2023年6月13日
    094
  • 在.NET中调用Java的类

    .NET不能直接调用Java的类,但IKVM.NET解决了这个问题。IKVM.NET提供了两种方式调用java的类:①把生成的jar包放置在程序根目录,然后通过创建URL实例的方式…

    Java 2023年5月29日
    071
  • MySQL日志系统bin log、redo log和undo log

    MySQL日志系统bin log、redo log和undo log 今人不见古时月,今月曾经照古人。 简介:日志是MySQL数据库的重要组成部分,记录着数据库运行期间各种状态信息…

    Java 2023年6月5日
    079
  • MySQL版本引起的错误

    接上一篇帖子,博主在CentOS上安装了最新版的MySQL容器(版本为8.0.19),在使用本地springBoot项目连接,启动项目后操作登录系统时报错。 请看代码: com.m…

    Java 2023年6月7日
    0130
  • Markdown笔记

    Markdown笔记 二级标题 三级标题 四级标题 六级标题 加粗 hello Hello Hello Hello Hello 引用 这是一个引用 分割线 图片 超链接 列表 无序…

    Java 2023年6月15日
    081
  • 如何使Session永不过期

    先说明情况:公司做监控系统,B/S结构,主要用在局域网内部!监控系统开机可能要开好长时间,管理员的ID 和权限等是写在Session里的——我想不用Cookies的原因可能是Coo…

    Java 2023年5月30日
    082
  • Java应用系统监控方法简介

    tsar 阿里巴巴开源的实时系统监控工具。其内部的sunfire有部分指标就是基于该工具每分钟采集一次来获取的。github 监控项及数据来源一览 摘自tsar/info.md 监…

    Java 2023年5月29日
    073
  • SpringBoot 集成腾讯云短信服务

    开通腾讯云短信服务 注册腾讯云 个人实名认证 进入到控制台,在云产品中找到短信 默认是没有开通的,阅读服务协议后,点击开始接入 目前来说,只要实名认证过的,直接就可以开通短信服务 …

    Java 2023年5月30日
    080
  • Spring 5 源码解析- XML中Bean配置加载-3

    spring-framework 加载配置文件过程: 根据业务系统运行的环境,选择 ApplicationContext 接口合适的实现类,启动系统先初始化上下文环境,然后通过Be…

    Java 2023年6月6日
    075
  • Redis 哈希Hash底层数据结构

    Redis 底层数据结构 Redis数据库就像是一个哈希表,首先对key进行哈希运算得到哈希值再取模得到一个下标,每个元素是一个节点,节点之间形成链表。这感觉有点像Java中的Ha…

    Java 2023年6月7日
    075
  • 一文带你搞懂 JWT 常见概念 & 优缺点

    在 JWT 基本概念详解这篇文章中,我介绍了: 什么是 JWT? JWT 由哪些部分组成? 如何基于 JWT 进行身份验证? JWT 如何防止 Token 被篡改? 如何加强 JW…

    Java 2023年6月9日
    089
  • 公司内部一次关于kafka消息队列消费积压故障复盘分享

    1.20晚上8点业务线开始切换LBS相关流量,在之后的1个小时时间内,积压量呈上升趋势,一路到达50W左右,第二天的图没贴出具体是50W数字,以下是第一天晚上的贴图部分。 现象一:…

    Java 2023年6月15日
    0113
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球