本demo实现了:
1. 将字符串压缩,转为字节流。
2. 定义对象,将字节流存入对象中。
2. 使用Gson,将对象转为json字符串。
3. 使用Gson将字符串转为对象。
4. 获取对象中的字节流,并进行解压,得到原始字符串。
备注:
主要是实际业务中,传输协议中需要兼容多种压缩算法,故不能对json串进行整体压缩,需要将压缩类型单独定义,再使用单独的key传输压缩后的字节流。
HelloJsonObj:
public class HelloJsonObj {
String compressType;
byte[] compressData;
public String getCompressType() {
return compressType;
}
public void setCompressType(String compressType) {
this.compressType = compressType;
}
public byte[] getCompressData() {
return compressData;
}
public void setCompressData(byte[] compressData) {
this.compressData = compressData;
}
}
ZlibTest:
import com.google.gson.Gson;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.util.zip.Deflater

这篇博客演示了如何在Java中使用zlib库压缩和解压缩json字符串。首先,将字符串压缩成字节流,然后将其存储到自定义对象中,接着使用Gson将对象转换为json字符串。之后,从json字符串中恢复对象,获取字节流并用zlib进行解压缩,最终还原原始字符串。这个过程在业务场景中用于兼容多种压缩算法的传输协议。
最低0.47元/天 解锁文章

618

被折叠的 条评论
为什么被折叠?



