package com.dianping.credit.bean;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.annotation.JSONField;
import com.fasterxml.jackson.annotation.JsonAnyGetter;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import java.util.LinkedHashMap;
import java.util.Map;
/**
* @Author: dainan
* @Date: 2018/12/25 11:37
* @Description:
*/
public class VO {
public static ObjectMapper objectMapper = new ObjectMapper();
public int id;
//@JsonIgnore
@JSONField(unwrapped = true)
public Map<String, Object> properties = new LinkedHashMap<String, Object>();
@JsonAnyGetter
public Map<String, Object> getProperties() {
return properties;
}
public void setProperties(Map<String, Object> properties) {
this.properties = properties;
}
public static void main(String[] args) {
VO vo = new VO();
vo.id = 123;
vo.properties.put("latitude", 37);
vo.properties.put("longitude", 127);
String text = JSON.toJSONString(vo);
System.out.println(text);
String s = null;
try {
s = objectMapper.writeValueAsString(vo);
} catch (JsonProcessingException e) {
e.printStackTrace();
}
System.out.println(s);
}
}
输出结果:
{"id":123,"latitude":37,"longitude":127}
{"id":123,"properties":{"latitude":37,"longitude":127},"latitude":37,"longitude":127}