PropertyPreFilter 根據PropertyName判斷是否序列化
PropertyFilter 根據PropertyName和PropertyValue來判斷是否序列化
NameFilter 修改Key,若是須要修改Key,process返回值則可
ValueFilter 修改Value
BeforeFilter 序列化時在最前添加內容
AfterFilter 序列化時在最後添加內容app
2、NameFilter使用demoide
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"ui