文档章节

FastJson 序列化java bean中的属性顺序问题(alibaba.fastjson)

writeademo
 writeademo
发布于 2016/09/30 15:16
字数 295
阅读 4.1K
收藏 1

行业解决方案、产品招募中!想赚钱就来传!>>>

FastJson 序列化java bean中的属性顺序问题(alibaba.fastjson)

fastjson序列化一个java bean,默认是根据fieldName的字母序进行序列化的,你可以通过ordinal指定字段的顺序,这个特性需要1.1.42以上版本。示例如下。

import com.alibaba.fastjson.JSON;

import com.alibaba.fastjson.annotation.JSONField;

 

public class FieldSequence {

 

    @JSONField(ordinal=1,name = "name_1")

    private String name;

    @JSONField(ordinal=2)

    private int age;

    @JSONField(ordinal=3)

    private String gender;

 

    public FieldSequence(String name,int age,String gender){

 

        this.name = name;

        this.age = age;

        this.gender = gender;

    }

 

    public String getName() {

        return name;

    }

 

    public void setName(String name) {

        this.name = name;

    }

 

    public int getAge() {

        return age;

    }

 

    public void setAge(int age) {

        this.age = age;

    }

 

    public String getGender() {

        return gender;

    }

 

    public void setGender(String gender) {

        this.gender = gender;

    }

 

    public static void main(String[] args){

        System.out.println(JSON.toJSONString(fieldSequence));

    }

 

}

属性中不使用@JSONField注解输出如下

{"age":20,"gender":"woman","name":"lily"}  //按属性字母顺序排序

·         1

使用注解后,上面程序输出如下

{"name_1":"lily","age":20,"gender":"woman"}

一种方式 @JSONType(orders={“”,””,””,””})字段名的顺序

另一种 @JSONField注解中可以设置属性顺序,重新设置属性名称,格式等,SerializerFeature(这是个枚举类,里面封装的有很多序列化的格式需求)

 

writeademo
粉丝 26
博文 744
码字总数 280189
作品 0
东城
私信 提问
加载中
请先登录后再评论。
Netty那点事(三)Channel与Pipeline

Channel是理解和使用Netty的核心。Channel的涉及内容较多,这里我使用由浅入深的介绍方法。在这篇文章中,我们主要介绍Channel部分中Pipeline实现机制。为了避免枯燥,借用一下《盗梦空间》的...

黄亿华
2013/11/24
2W
22
访问安全控制解决方案

本文是《轻量级 Java Web 框架架构设计》的系列博文。 今天想和大家简单的分享一下,在 Smart 中是如何做到访问安全控制的。也就是说,当没有登录或 Session 过期时所做的操作,会自动退回到...

黄勇
2013/11/03
3.4K
6
beego API开发以及自动化文档

beego API开发以及自动化文档 beego1.3版本已经在上个星期发布了,但是还是有很多人不了解如何来进行开发,也是在一步一步的测试中开发,期间QQ群里面很多人都问我如何开发,我的业余时间实在...

astaxie
2014/06/25
2.7W
22
Swing界面分析和调试工具--Swing Inspector

Swing Inspector是一个Java Swing/AWT用户界面分析和调试工具,功能与firebug类似,具有强大的Swing/AWT用户界面分析和调试相关功能。 适用于从java swing初级到高级的所有开发人员,能够快速...

匿名
2013/03/06
3.3K
0
开源数据访问组件--Smark.Data

Smark.Data是基于Ado.net实现的数据访问组件,提供基于强类型的查询表达式进行灵活的数据查询,统计,修改和删除等操作;采用基于条件驱动的操作模式,使数据操作更简单轻松;内部通过标准SQL...

泥水佬
2013/03/12
2.5K
0

没有更多内容

加载失败,请刷新页面

加载更多

用17张 图带你看懂红黑树5大特性

tips:叶子结点,没有子结点的节点。nil等同于java中的null。 根据特点4,得出不能有连续的红色结点,特点5又说从任一结点到每个叶子节点的左右路径都包含相同数目的黑色节点。可以推出最长的路...

小咖呀
今天
0
0
为什么java8还在被大量使用?

  对于很多人来说,新版本的很多功能是很值得期待,并且他是从功能开发到预览一直在关注。而且对于本身来说升级所带来的好处远远大于升级所带来的工作量。   因为java 本身的兼容性问题,...

SXXpenguin
7分钟前
7
0
Yotta企业云盘:企业数据存储的可靠平台

回顾过去的几年,企业云盘市场发生了许多里程碑式的事件。 市场仍在继续进行模式重塑和集成的过程。 行业趋势已经出现,市场在平静中培育了新的机会。 企业在内容管理中的痛点越来越明显,需...

osc_srnunz15
7分钟前
0
0
《剑指 offer》 21. 调整数组顺序使奇数位于偶数前面

点击上方“图解面试算法”,选择“星标”公众号 重磅干货,第一时间送达 大家好,我是程序员吴师兄。 今天分享的题目来源于 LeetCode 上的剑指 Offer 系列 面试题 21.调整数组顺序使奇数位于...

五分钟学算法
今天
0
0
有了这份程序员面试指南,你离大厂Offer还远吗?| 附推荐书籍

本篇文章,我将结合英文版的 Google 面试指南的主线,根据自己的理解对文章进行修改,然后结合自己面试国内大厂的经验给大家阐述。其实我觉得,各大公司针对程序员岗位的面试流程来讲是相对比...

HollisChuang
今天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部