java - 如何反序列化具有连字符或破折号的 Json 对象 - 在其属性名称中 .. 使用 GSON
问题描述
示例 Json -
{"error":
{"message":"irp-return-error",
"irp-err":{"ErrorCode":"1015","ErrorMessage":"Invalid Data for this user"}
}
}
我尝试使用 @SerializedName Gson 注释设置名称
public class Error {
@SerializedName("irp-err")
private IrpErr irpErr;
private String message;
但是对 json 对象的调用返回 null。
Gson erngson = new Gson();
ErrResponse data = erngson.fromJson(response.readEntity(String.class), ErrResponse.class);
if(data.getError()!=null){
IrpErr irperr = data.getError().getIrpErr(); //NPE
}
解决方案
推荐阅读
- c# - 如何显示列表
在数据表中水平? - eclipse - 我可以阻止 STM32CubeIDE (Eclipse) 自动将文件添加到项目吗?
- javascript - 从文件加载人脸时face-js不匹配
- qt - 设置内容方向会改变弹出窗口出现时的变暗效果
- python - 在不同的文件上调用 Tkinter GUI 框架类
- sql-server - 如何在 SQL Server 中添加分数?
- kubernetes - 使用远程呈现在 K8S pod 中调试 java 应用程序
- azure-monitoring - Azure 中的 Azure Sentinel 替代方案
- scala - 如何在 Scala 2 中使用 Scala 宏减少样板代码?
- javascript - 库中的 React Router 问题 - 使用外部元素