@JSONField注解可以用在方法(method),属性(field)以及方法中的参数(parameter)上。JSONField中的name属性用来指定JSON串中key的名称。主要用于指定入参的名字
@JSONField作用在Field时,其name不仅定义了输入key的名称,同时也定义了输出的名称。
public class Person {
@JSONField(name = "name") // 注意观察生成的JSON串中name和age的区别
private String name;
@JSONField(name = "AGE")
private String age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getAge() {
return age;
}
public void setAge(String age) {
this.age = age;
}
}
@JSONField也可以直接作用在get或set方法上
@JSONField(name = "name")
public String getName() {
return name;
}
@JSONField(name = "name")
public void setName(String name) {
this.name = name;
}
@JSONField(name = "AGE")
public String getAge() {
return age;
}
@JSONField(name = "AGE")
public void setAge(String age) {
this.age = age;
}
PS:FastJson在进行操作时,是根据getter和setter的方法进行的,并不是依据Field进行。
public class PersonTest {
private Person person;
/**
* 初始化对象
*/
@Before
public void setUp() {
person = new Person();
person.setName("gyl");
person.setAge("20");
}
@Test
public void test() {
String jsonStr = JSONObject.toJSONString(person);
System.out.println("bean to json:" + jsonStr);
person = JSONObject.toJavaObject(JSONObject.parseObject(jsonStr), Person.class);
System.out.println("json to bean:" + person.getName());
}
}
Output:
bean to json:{"AGE":"20","name":"gyl"}
json to bean:gyl
————————————————
版权声明:本文为CSDN博主「Yanliang_」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/badguy_gao/article/details/82853895
@JSONField作用在Field时,其name不仅定义了输入key的名称,同时也定义了输出的名称。public class Person { @JSONField(name = "name") // 注意观察生成的JSON串中name和age的区别 private String name; @JSONField(name = "AGE") private String age;
public String getName() { return name; }
public void setName(String name) { this.name = name; }
public String getAge() { return age; }
public void setAge(String age) { this.age = age; }}
@JSONField也可以直接作用在get或set方法上@JSONField(name = "name")public String getName() { return name;}
@JSONField(name = "name")public void setName(String name) { this.name = name;}
@JSONField(name = "AGE")public String getAge() { return age;}
@JSONField(name = "AGE")public void setAge(String age) { this.age = age;}
PS:FastJson在进行操作时,是根据getter和setter的方法进行的,并不是依据Field进行。————————————————版权声明:本文为CSDN博主「Yanliang_」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.csdn.net/badguy_gao/article/details/82853895
浙公网安备 33010602011771号