JSONObject 自定义过滤配置
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JSONObject 自定义过滤配置相关的知识,希望对你有一定的参考价值。
一、自定义过滤器说明
PropertyPreFilter 根据PropertyName判断是否序列化
PropertyFilter 根据PropertyName和PropertyValue来判断是否序列化
NameFilter 修改Key,如果需要修改Key,process返回值则可
ValueFilter 修改Value
BeforeFilter 序列化时在最前添加内容
AfterFilter 序列化时在最后添加内容
二、NameFilter使用demo
JSONObject.toJSONString(data, new NameFilter() { private String underscoreName(String name) { if (StringUtils.isEmpty(name)) { return ""; } StringBuilder result = new StringBuilder(); result.append(name.substring(0, 1).toLowerCase()); for (int i = 1; i < name.length(); ++i) { String s = name.substring(i, i + 1); String slc = s.toLowerCase(); if (!(s.equals(slc))) { result.append("_").append(slc); } else { result.append(s); } } return result.toString(); } @Override public String process(Object object, String name, Object value) { return underscoreName(name); } })
转换效果:将 property 中的 name = "submitOrder" 转换为 name = "sbumit_order"
以上是关于JSONObject 自定义过滤配置的主要内容,如果未能解决你的问题,请参考以下文章