fastjson @JSONType 使用


fastjson @JSONType 使用

 

 

**********************

相关注解

 

@JSONType:标注在类上

@Retention(RetentionPolicy.RUNTIME)
@Target({ ElementType.TYPE })
public @interface JSONType {

    String[] orders() default {};      //字段序列化顺序

    String[] includes() default {};    //包含的序列化字段
    String[] ignores() default {};     //不包含的序列化字段

    Class<?> serializer() default Void.class;     //自定义序列化类
    Class<?> deserializer() default Void.class;   //自定义反序列化类

    Class<? extends SerializeFilter>[] serialzeFilters() default {};


    SerializerFeature[] serialzeFeatures() default {};
    Feature[] parseFeatures() default {};
    
    boolean asm() default true;
    boolean alphabetic() default true;    
    boolean serializeEnumAsJavaBean() default false;
    
    String typeName() default "";
    String typeKey() default "";
    
    Class<?>[] seeAlso() default{};
    Class<?> mappingTo() default Void.class;   
    Class<?> builder() default Void.class;

    PropertyNamingStrategy naming() default PropertyNamingStrategy.CamelCase;

    Class<? extends ParserConfig.AutoTypeCheckHandler> autoTypeCheckHandler() default ParserConfig.AutoTypeCheckHandler.class;
}

 

 

**********************

示例

 

@Data
@JSONType(orders = {"amount","price","productId","productName"})
class Product{

    private String productId;
    private String productName;

    private Double price;
    private Integer amount;
}

public class Test4 {

    public static void main(String[] args){
        Product product=new Product();
        product.setProductId("2");
        product.setProductName("apple");
        product.setPrice(4d);
        product.setAmount(10);

        System.out.println(product);
        System.out.println(JSON.toJSONString(product));
    }
}

 

*****************

控制台输出

 

Product(productId=2, productName=apple, price=4.0, amount=10)
{"amount":10,"price":4.0,"productId":"2","productName":"apple"}

序列化字符串按照指定顺序输出

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值