EDIT: I want to map the jackson object with POJO java class dynamically at the time of deserialization.
编辑:我想在反序列化时动态地将jackson对象映射到POJO java类。
Eg. {id:1,name:"rajeev", phone:"5555"}
例如。 {id:1,姓名:“rajeev”,电话:“5555”}
POJO class
POJO课程
class Data{
public int id;
public string name;
public string contact;
}
The above jackson object must mapping with existing POJO class without any error. Here phone is the optional parameter
上面的jackson对象必须映射到现有的POJO类,没有任何错误。这里phone是可选参数
2 个解决方案
#1
0
if you work with spring mvc this an exemple
如果你使用spring mvc这个例子
@Controller
public class YourJSONController {
@RequestMapping(value="/YourUri", method = RequestMethod.GET)
public @ResponseBody Data getDataInJSON() {
Data data= new Data();
//setter
return data;
}
}
and dont forget to add jackson data bind dependency to your pom.xml
并且不要忘记将jackson数据绑定依赖项添加到您的pom.xml中
#2
0
If you mean that the json response attributs name may be different from your attributs name, you can use the annotation @SerializedName("ZIPNAME")
of package com.google.gson.annotations.SerializedName
.
如果您的意思是json响应属性名称可能与您的attributs名称不同,则可以使用com.google.gson.annotations.SerializedName包的注释@SerializedName(“ZIPNAME”)。
For example, your classe may look like :
例如,您的classe可能如下所示:
class Data{
public int id;
public string name;
@SerializedName("phone")
public string contact;
}
#1
0
if you work with spring mvc this an exemple
如果你使用spring mvc这个例子
@Controller
public class YourJSONController {
@RequestMapping(value="/YourUri", method = RequestMethod.GET)
public @ResponseBody Data getDataInJSON() {
Data data= new Data();
//setter
return data;
}
}
and dont forget to add jackson data bind dependency to your pom.xml
并且不要忘记将jackson数据绑定依赖项添加到您的pom.xml中
#2
0
If you mean that the json response attributs name may be different from your attributs name, you can use the annotation @SerializedName("ZIPNAME")
of package com.google.gson.annotations.SerializedName
.
如果您的意思是json响应属性名称可能与您的attributs名称不同,则可以使用com.google.gson.annotations.SerializedName包的注释@SerializedName(“ZIPNAME”)。
For example, your classe may look like :
例如,您的classe可能如下所示:
class Data{
public int id;
public string name;
@SerializedName("phone")
public string contact;
}