Reputation: 11
When I serialize a string value if it's too long, I want to change it to another value. If use FastJSON, you can use ValueFilter do it.
String jsonStr = "{\"key1\":\"DMA65DEG3p4If+JLrfzUUeeMTnX3ufk57ji+thwrbdg=\",\"key2\":\"data balabala\"}";
ValueFilter filter = (Object object, String name, Object value) -> {
if (value instanceof String) {
String s = (String) value;
if (s.length() > 32) {
s = "skip " + s.length() + " data";
}
return s;
} else {
return value;
}
};
JSONObject object = JSON.parseObject(jsonStr);
System.out.println(JSON.toJSONString(object, filter));
So how does Jackson solve this problem?
Upvotes: 1
Views: 226