序列化与反序列化
- 含义
- 序列化:指把Java对象转换为字节序列的过程
- 反序列化:指把字节序列恢复为Java对象的过程。
- 作用
- 序列化作用:在传递和保存对象时.保证对象的完整性和可传递性。对象转换为有序字节流,以便在网络上传输或者保存在本地文件中。
- 反序列化作用:根据字节流中保存的对象状态及描述信息,通过反序列化重建对象。
总结:核心作用就是对象状态的保存和重建。(整个过程核心点就是字节流中所保存的对象状态及描述信息)。可见,有序列化,就有反序列化,两者是相辅相成,缺一不可。要想写,就得序列化,要想读,就得反序列化。
那么接下来,我遇到的问题就是对序列化与反序列化造成的问题。
- 场景介绍
在SpringBoot使用Redis做自动化缓存,而且结果存储的形式是JSON格式。由于业务需要,前端需要将BigDecimal的类型的属性结果值需要精确到小数点后两位,经过查找,找到如下解决方案:@JsonSerialize(using = DataSerializerUtils.class) private BigDecimal payMoney; // 序列化类: public class DataSerializerUtils extends JsonSerializer<BigDecimal> { @Override public void serialize(BigDecimal value, JsonGenerator gen, SerializerProvider provider) throws IOException { if (value !=</