fastjson使用心得

本文分享了fastjson的使用心得,强调其无需额外环境依赖、速度快的特点。介绍了如何利用@JSONField进行序列化控制,包括忽略字段、指定序列化格式等。还提到了通过JSONPath提取集合对象,以及快速将JSON封装为Java对象的方法,并推荐了Chrome的JSON查看插件JSONView。
摘要由CSDN通过智能技术生成

        喜欢fastjson,因为只需要依赖JDK,其他环境都不需要依赖就可以使用。而且它非常的快。这里我也把使用它的一些感悟和总结写出来,供大家指正。

        说到fastjson,我们就要懂得一个概念就是序列化:将对象信息转换为可以传输和存储的信息【百度百科】

        我们不需要一个字段的时候我们可以通过@JSONFiled(serialize=false) 来不序列化,默认JSONFiled类里面serialize和deserialize都是true

        @JSONFiled()里面有很多参数可以去设置,比如时间的类型@JSONFiled(format="yyyyMMdd HHmmss"),也可以指定在序列化时的名字。

    @Id
    @Column(name = "id")
    @JSONField(name = "ID")
    @GeneratedValue(strategy= GenerationType.IDENTITY)
    public int getId() {
        return id;
    }
       比如我们在上面指定序列化后名字为“ID”。

      

      fastjson还有一个优点就是和java中的实体类有很好的融合。我们定义好的实体类。然后我们在返回给前端使用的时候,有一些字段我们是不需要或者前端不要求提供的。所以我们可以用过滤器把它过滤掉。

   SimplePropertyPreFilter filter = new SimplePropertyPreFilter(FundEntity.class,"ID","contractContent","fixtureTime","contractContent","typeName","dealMark","transactionAmount");
   return  JSON.toJSONString(new BaseModel(Constants.SUCCESS_CODE,fundLists2),filter);
      这样返回的字段就是我们Filter里面定义的规定字段。

      当我们按顺序输出相关的列,我们可以在输出的model类中加入注解@JSONField(ordinal=0) ..  如下:

        @JSONField(ordinal = 0)
        private String code;
        @JSONFi
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值