Java Gson为fromJson方法返回null
我正在尝试使用Gson解析我的Java Gson为fromJson方法返回null,java,gson,Java,Gson,我正在尝试使用Gson解析我的工具类。问题是,当我运行单元测试时,toolConverted有空的ToolA和ToolB。字符串本身是一个有效的JSON字符串,我想问题可能出在Tools.java类中的构造函数上 Tools.java @Getter @AllArgsConstructor @NoArgsConstructor public class Tools{ @JsonProperty("ToolA") List<ToolA> toolA;
工具
类。问题是,当我运行单元测试时,toolConverted有空的ToolA和ToolB。字符串本身是一个有效的JSON字符串,我想问题可能出在Tools.java类中的构造函数上
Tools.java
@Getter
@AllArgsConstructor
@NoArgsConstructor
public class Tools{
@JsonProperty("ToolA")
List<ToolA> toolA;
@JsonProperty("ToolB")
List<ToolB> toolB;
}
转化
Gson gson = new Gson();
JsonMapper jsonMapper = JsonMapper.builder().build();
String toolsValue= jsonMapper.writeValueAsString(TOOLS_MAP);
Tools toolConverted = gson.fromJson(toolsValue, Tools .class);
工具价值
{
"ToolA":[
{
"uxA":"7",
"uxB":"234.53",
"uxC":"5345.23",
"uxD":"0.155"
}
],
"ToolB":[
{
"state":"AZ",
"compound_tax":"N",
"federal_tax_percent":"5.0000",
"provincial_tax_percent":"0.0000"
}
]
}
尝试
@SerializedName(“ToolA”)
而不是@JsonProperty(“ToolA”)
,最后一个是jackson注释,谢谢!
{
"ToolA":[
{
"uxA":"7",
"uxB":"234.53",
"uxC":"5345.23",
"uxD":"0.155"
}
],
"ToolB":[
{
"state":"AZ",
"compound_tax":"N",
"federal_tax_percent":"5.0000",
"provincial_tax_percent":"0.0000"
}
]
}