尝试使用gson将以下json字符串解析为java对象
{
"entry": "132456",
"product": {
"item": "123456",
"prompts": [
{
"promptId": "1",
"promptNumber": "109",
"promptType": 4,
"promptTypeDesc": "desc1",
"validations": [
{
"minLen": 10,
"maxLen": 10,
"required": true
}
]
},
{
"promptId": "2",
"promptNumber": "110",
"promptType": 4,
"promptTypeDesc": "desc2",
"validations": [
{
"minLen": 12,
"maxLen": 12,
"required": true
}
]
},
{
"promptId": "3",
"promptNumber": "72",
"promptType": 5,
"promptTypeDesc": "desc4",
"validations": [
{
"required": true
}
]
}
]
}
}
我有我的java类
public class Info{
private String entry;
private Product product;
// added setters and getters
/* Product is inner class*/
public static Product {
private String item;
private List<Prompt> prompts;
// added getters and setters
/*Prompt inner class*/
public static Prompt{
private String promptId;
private String promptNumber;
private List<Validation> validations;
// getters and setters
/*Validation inner class*/
public static Validation{
private int maxLen;
private int minLen;
private boolean required;
// added getters and setters
} // end of Validation class
} // end of Prompt class
} // end of Product
} // End of Info
转换后,我得到的提示对象为空。
item = gson.fromJson(response, Info.class);
有人可以纠正我吗
试试这个JSON:
{
"entry": "132456",
"product":
{
"item": "123456",
"prompts":
[
{
"promptId": "1",
"promptNumber": "109",
"promptType": 4,
"promptTypeDesc": "desc1",
"validations":
[
{
"minLen": 10,
"maxLen": 10,
"required": true
}
]
}
]
}
}
使用此Java类:
import java.util.List;
public class Info {
private String entry;
private Product product;
public class Product {
private String item;
private List<Prompt> prompts;
public class Prompt {
private String promptId;
private String promptNumber;
private int promptType;
private String promptTypeDes;
private List<Validation> validations;
public class Validation {
private int maxLen;
private int minLen;
private boolean required;
}
}
}
}
奇迹般有效
public static void main(String args[]){
String input = "{"
+ "\"entry\": \"132456\","
+ "\"product\": {\"item\": \"123456\","
+ "\"prompts\":[{\"promptId\": \"1\","
+ "\"promptNumber\": \"109\","
+ "\"promptType\": 4,"
+ "\"promptTypeDesc\": \"desc1\","
+ "\"validations\":[{\"minLen\": 10,"
+ "\"maxLen\": 10"
+ ",\"required\": true}]}]}}";
Gson gson = new GsonBuilder().setPrettyPrinting().create();
Info item = gson.fromJson(input, Info.class);
String jsonOutput = gson.toJson(item);
System.out.println(jsonOutput);
}
输出:
run:
{
"entry": "132456",
"product": {
"item": "123456",
"prompts": [
{
"promptId": "1",
"promptNumber": "109",
"promptType": 4,
"validations": [
{
"maxLen": 10,
"minLen": 10,
"required": true
}
]
}
]
}
}
BUILD SUCCESSFUL (total time: 0 seconds)
问题内容: 我的朋友给我发了一个问题,他在一次关于字符串对象的Java认证模拟考试中看到了一个问题: 调用此方法时将创建多少个字符串对象?考试给出的正确答案是3。但是我认为是5。 “嗨” “ 5” “ HI5” “H” “H” 我错了吗? 问题答案: String makeStrings() { String s = “HI”; //String literal s = s + “5”; //co
问题内容: 我有一个.NET中的SOAP Web服务返回的JSON字符串。如下: 现在,我想将此字符串解析为JSON对象。我也看了这个,他们已经用这行代码: 所以我可以通过用我的字符串名称替换“ json”来做到这一点。还需要引用除NewtonSoft.dll以外的任何其他dll吗? 顺便说一句,这是完整的网络服务代码 问题答案: 用 您需要System.Web.Extensions dll并导入
本文向大家介绍VBScript把json字符串解析成json对象的2个方法,包括了VBScript把json字符串解析成json对象的2个方法的使用技巧和注意事项,需要的朋友参考一下 asp/vbscript将json字符解析为json对象的方法,如果asp使用jscript来编写服务器端代码操作json字符串就简单了,vbscript需要MSScriptControl.ScriptControl
问题内容: 我正在尝试在Python中加载和解析JSON文件。但是我在尝试加载文件时遇到了困难: 产量: 我看着18.2。文档中的JSON编码器和解码器,但是通读这个看起来糟透了的文档非常令人沮丧。 前几行(用随机条目匿名): 问题答案: 你有一个JSON Lines格式的文本文件。你需要逐行解析文件: 每行都包含有效的JSON,但总体而言,它不是有效的JSON值,因为没有顶级列表或对象定义。 请
错误中的SOAP WSDL URL是Spring Boot应用程序中的另一个web服务。试图理解为什么这会出现在错误中。 UnmarshalException:意外元素(URI:“”,local:“message”)。需要的元素是<{http://soap_wsdl_url}jaxb_pojo_name>
你好,我有以下任务: 具有JSON对象的URL: *通过注释定义如何将JSON定义到Java列表中,并找到其中有“名称”的对象。 我认为问题是在不使用任何java库的情况下解析JSON。到目前为止,我已经开发了以下代码: 我在这里做的是我有一个JSONObject类,它将JSON属性存储在映射中,然后我想使用反射来填充任何类。 为了解析JSON,我尝试创建一个迷你FSM(:)),它使用For循环解