Search in sources :

Example 41 with NameFilter

use of com.alibaba.fastjson.serializer.NameFilter in project fastjson by alibaba.

the class FilterDemo method test_secure.

public void test_secure() throws Exception {
    ValueFilter filter = new ValueFilter() {

        public Object process(Object source, String name, Object value) {
            if (name.equals("name")) {
                return "WSJ";
            }
            return value;
        }
    };
    NameFilter nameFilter = new NameFilter() {

        public String process(Object source, String name, Object value) {
            if (name.equals("id")) {
                return "ID";
            }
            return name;
        }
    };
    String text = "{\"id\":123,\"name\":\"WJH\"}";
    Object object = JSON.parse(text);
    SerializeWriter out = new SerializeWriter();
    JSONSerializer serializer = new JSONSerializer(out);
    serializer.getValueFilters().add(filter);
    serializer.getNameFilters().add(nameFilter);
    serializer.write(object);
    String outText = out.toString();
    System.out.println(outText);
}
Also used : NameFilter(com.alibaba.fastjson.serializer.NameFilter) SerializeWriter(com.alibaba.fastjson.serializer.SerializeWriter) ValueFilter(com.alibaba.fastjson.serializer.ValueFilter) JSONSerializer(com.alibaba.fastjson.serializer.JSONSerializer)

Aggregations

NameFilter (com.alibaba.fastjson.serializer.NameFilter)41 JSONSerializer (com.alibaba.fastjson.serializer.JSONSerializer)36 SerializeWriter (com.alibaba.fastjson.serializer.SerializeWriter)36 HashMap (java.util.HashMap)17 ValueFilter (com.alibaba.fastjson.serializer.ValueFilter)3 JSONException (com.alibaba.fastjson.JSONException)2 PascalNameFilter (com.alibaba.fastjson.serializer.PascalNameFilter)2 PropertyFilter (com.alibaba.fastjson.serializer.PropertyFilter)2 SerializeConfig (com.alibaba.fastjson.serializer.SerializeConfig)2 SerializerFeature (com.alibaba.fastjson.serializer.SerializerFeature)2 Map (java.util.Map)1