开发中遇到一种情况,从前端接收的JSON反序列化时的key与实体里的字段不一致,并且实体调用第三方接口时,序列化后的key与实体也不一致。为了实现该功能,写了以下代码做测试,测试成功,记录一下。
import com.alibaba.fastjson.annotation.JSONField;
public class User {
private String name;
@JSONField(name="name2")
public String getName() {
return name;
}
@JSONField(name="name1")
public void setName(String name) {
this.name = name;
}
}
import com.alibaba.fastjson.JSONObject;
public class Json {
public static void main(String[] args) {
String json ="{\"name1\":\"111\"}";
User user = JSONObject.parseObject(json, User.class);
String s = JSONObject.toJSONString(user);
System.out.println(s);
}
}