jackson将JSON转换为JAVA
我正在尝试解析从google自定义搜索检索到的json数据 以下是json示例:jackson将JSON转换为JAVA,java,json,jackson,Java,Json,Jackson,我正在尝试解析从google自定义搜索检索到的json数据 以下是json示例: { "items": [ { "link": "address1" }, { "link": "address2" } ] } 这是POJO: public class Result { item[] items; class item { String link; } } 但我有一个错误: 无法识别的字段“项”(类结果),未标记
{
"items": [
{
"link": "address1"
},
{
"link": "address2"
}
]
}
这是POJO:
public class Result
{
item[] items;
class item
{
String link;
}
}
但我有一个错误:
无法识别的字段“项”(类结果),未标记为可忽略
我的POJO有什么问题吗?使类结构如下所示
class item {
String link;
}
@JsonIgnoreProperties(ignoreUnknown=true)
class Result {
item[] items;
}
@JsonIgnoreProperties(ignoreUnknown=true)将提供完整帮助,如果JSON字符串中有任何属性,但该属性不在您的类中,那么解析器将不会通过任何异常,它将忽略它
编辑:
用示例完成代码
class Item {
String link;
public String getLink() {
return link;
}
public void setLink(String link) {
this.link = link;
}
}
@JsonIgnoreProperties(ignoreUnknown = true)
class Result {
List<Item> items;
public List<Item> getItems() {
return items;
}
public void setItems(List<Item> items) {
this.items = items;
}
使类结构如下所示
class item {
String link;
}
@JsonIgnoreProperties(ignoreUnknown=true)
class Result {
item[] items;
}
@JsonIgnoreProperties(ignoreUnknown=true)将提供完整帮助,如果JSON字符串中有任何属性,但该属性不在您的类中,那么解析器将不会通过任何异常,它将忽略它
编辑:
用示例完成代码
class Item {
String link;
public String getLink() {
return link;
}
public void setLink(String link) {
this.link = link;
}
}
@JsonIgnoreProperties(ignoreUnknown = true)
class Result {
List<Item> items;
public List<Item> getItems() {
return items;
}
public void setItems(List<Item> items) {
this.items = items;
}
如果在jackson中使用内部类,则内部类必须是静态的或不使用内部类 如果在jackson中使用内部类,则内部类必须是静态的或不使用内部类 可能类项是一个内部类。。。尝试将其设置为公共类。可能该类项是一个内部类。。。尝试将其设置为公共类。@JsonIgnoreProperties与他的特定问题无关。虽然谷歌自定义搜索的json确实有其他字段,但他的问题是他的
item
类是一个非静态的内部类。是的,通过思考谷歌结果,我给出了这个想法。@JsonIgnoreProperties与他的特殊问题无关。虽然谷歌自定义搜索的json确实有其他字段,但他的问题是他的item
类是一个非静态的内部类。