fastjson简介
FastJson是阿里巴巴的开源JSON解析库,它可以解析JSON格式的字符串,支持将Java Bean序列化为JSON字符串,也可以从JSON字符串反序列化到JavaBean
- 自定义序列化与反序列化方式
/**
* 实体类
**/
@Getter
@Setter
public class Demo implements Serializable {
private static final long serialVersionUID = 1L;
@JSONField(serializeUsing = DemoSerializer.class, deserializeUsing = DemoDeserializer.class)
private String field;
}
/**
* 序列化类
**/
public static class DemoSerializer implements ObjectSerializer {
@Override
public void write(JSONSerializer serializer, Object object, Object fieldName, Type fieldType, int features) {
String field = (String) object;
// todo 对field做业务处理
serializer.write(field);
}
}
/**
* 反序列化类
**/
public static class HexStringDeserializer implements ObjectDeserializer {
@Override
public String deserialze(DefaultJSONParser parser, Type type, Object fieldName) {
String field = parser.getLexer().stringVal();
// todo 对field做业务处理
return field;
}
@Override
public int getFastMatchToken() {
return 0;
}
}