java jsonfield

<link rel="stylesheet" href="https://js.how234.com/third-party/SyntaxHighlighter/shCoreDefault.css" type="text/css" /><script type="text/javascript" src="https://js.how234.com/third-party/SyntaxHighlighter/shCore.js"></script><script type="text/javascript"> SyntaxHighlighter.all(); </script>

java jsonfield是什么,让我们一起了解一下?

jsonfield是一种高效性能,若属性是私有的,必须有set*方法,否则无法反序列化,fastjson也是目前java语言中最快的json库,比自称最快的jackson速度还要快。

若属性是私有的,必须有set*方法,否则无法反序列化是什么意思?

示例代码如下:

package com.alibaba.fastjson.annotation;public @interface JSONField {// 配置序列化和反序列化的顺序,1.1.42版本之后才?持int ordinal() default 0;// 指定字段的名称String name() default "";// 指定字段的格式,对?期格式有?String format() default "";// 是否序列化boolean serialize() default true;// 是否反序列化boolean deserialize() default true;}

java jsonfield

那么通过用@JSONField注解一个类的属性,可以达到哪些目标?

1、指定field对应的key名称:@JSONField(name = “NaMe”)

2、对于时间字段,指定其格式:@JSONField(format = “yyyy-MM-dd HH:mm:ss”)

3、不序列化某些字段:@JSONField(serialize = false)

4、指定顺序:@JSONField(ordinal = 1)

当然,以上注解里的属性,可以同时使用:@JSONField(name = “nAmE”, format = “yyyy-MM-dd HH:mm”)