gson相关内容

在 Java 中使用 Gson 合并/扩展 JSON 对象

通常,我需要合并两个 JSON 对象(类似于 jQuery 的 $.extend() 有效).但是,Gson 库没有内置功能,他们表示他们不会实施它. 做类似的事情: private void merge(JsonObject firstObj, JsonObject secondObj){for(String keyInSecondObj : secondObj.entrySet().k ..
发布时间:2021-12-27 22:04:26 Java开发

如何在 Gson 序列化中保持字段顺序

似乎 Gson.toJson(Object object) 生成带有随机分布的对象字段的 JSON 代码.有没有办法以某种方式修复字段顺序? 公共类 Foo {公共字符串栏;公共字符串巴兹;公共 Foo( 字符串栏, 字符串 baz ) {this.bar = 酒吧;this.baz = baz;}}Gson gson = new Gson();String jsonRequest = gson ..
发布时间:2021-12-21 22:20:43 Java开发

在 Java 中使用 GSON 解析复杂的 Json 对象

我有一个很长的 JSON 需要用 Gson 解析,但为了简洁起见,我将其修剪为以下示例: {“卷":[{“状态":“可用",“管理":真的,"name": "va_85621143-1133-412f-83b4-57a01a552638_",“支持": {“状态":“支持"},"storage_pool": "pfm9253_pfm9254_new","id": "afb8e294-6188-4 ..
发布时间:2021-12-21 22:20:23 Java开发

GSON:如何在保持循环引用的同时防止 StackOverflowError?

我有一个带有循环引用的结构.出于调试目的,我想转储它.基本上和任何格式一样,但我选择了 JSON. 因为可以是任何类,所以我选择了不需要JAXB注解的GSON. 但 GSON 遇到循环引用并递归,直到 StackOverflowError. 如何将 GSON 限制为 忽略某些班级成员?@XmlTransient 和 @JsonIgnore 都没有被遵守. 忽略某些对象 ..
发布时间:2021-12-21 22:16:14 Java开发

如何在 Gson 中实现 TypeAdapterFactory?

我如何实现类型 TypeAdapterFactory 在 Gson 中? create 的主要方法是通用的.为什么? 注册方法registerTypeAdapterFactory() 不接收类型参数.那么,Gson 如何知道工厂处理了哪些类? 我应该为多个类实现一个工厂,还是可以为多个类实现一个工厂? 如果我为多个类实现一个工厂,那么在域外类型参数的情况下我应该返回什么? ..
发布时间:2021-12-21 22:10:41 Java开发

GSON - 特定情况下的自定义序列化程序

我有这个架构: 公开课学生{公共字符串名称;公立学校学校;}公开课学校{公共整数 ID;公共字符串名称;}公共类数据{公共 ArrayList学生们;公共 ArrayList学校;} 我想用 Gson 序列化 Data 对象,并得到类似的东西: { "学生": [{"name":"name1","school": "1"//scool 的 id,而不是它的整个 Json}],"school" ..
发布时间:2021-12-21 22:05:16 Java开发

GSON 将键值反序列化为自定义对象

我需要反序列化 json,它是一个日期/长值数组.以下是返回的 JSON 示例: [{"2011-04-30T00:00:00-07:00":100}, {"2011-04-29T00:00:00-07:00":200}] 使用 GSON 我可以将其反序列化为 List>,但希望能够将其转换为 List 类似于: 公共类 MyCustomClass() {日期日期;长期价值;} 我似乎找不 ..
发布时间:2021-12-21 22:02:00 Java开发

Gson 仅在不为空或不为空时才序列化字段

我有需要将 java 对象转换为 json 的要求. 我为此使用 Gson,但我需要转换器仅序列化非空值或非空值. 例如: //我的java对象看起来像类测试对象{字符串 test1;字符串 test2;OtherObject otherObject = new OtherObject();} 现在我的 Gson 实例将此对象转换为 json 看起来像 Gson gson = n ..
发布时间:2021-12-21 22:01:48 Java开发

使用 TypeAdapter 的对象中一个变量(多个)的 Gson 自定义序列化器

我见过很多使用自定义 TypeAdapter 的简单示例.最有帮助的是 Class TypeAdapter.但这还没有回答我的问题. 我想自定义对象中单个字段的序列化,让默认的Gson机制来处理剩下的事情. 出于讨论的目的,我们可以使用这个类定义作为我希望序列化的对象的类.我想让 Gson 序列化前两个类成员以及基类的所有公开成员,并且我想对下面显示的第 3 个和最后一个类成员进 ..
发布时间:2021-12-21 21:54:38 Java开发

消除双向递归关系的最简单方法?

我使用 Gson 库将 Java 对象转换为 Json 响应..问题是在 JPA 请求后,由于与其他实体的递归关系,无法转换从 DB 检索的对象(参见我之前的问题) 例如: 公共类Gps实现Serializable {private static final long serialVersionUID = 1L;@ID@基本(可选=假)@Column(name = "IMEI", nullabl ..
发布时间:2021-12-16 08:30:18 Java开发

Gson TypeToken 是如何工作的?

我知道在 Java 中,例如,C# 泛型是编译时特性,并且通过类型擦除被删除.那么,Gson 的 TypeToken 究竟是如何工作的呢?它如何获取对象的泛型类型? 解决方案 来自 JLS 的 §4.6(强调我的): 类型擦除是从类型(可能包括参数化类型和类型变量)到类型(从不参数化类型或类型变量)的映射.我们写|T|对于T类型的擦除,擦除映射定义如下: 参数化类型 (§4 ..
发布时间:2021-12-15 09:59:34 Java开发

Java 类型泛型作为 GSON 的参数

在 GSON 中获取您执行的对象列表 Gson gson = new Gson();Type token = new TypeToken>(){}.getType();返回 gson.fromJson(json, token); 效果很好,但我想更进一步,对 MyType 进行参数化,这样我就可以有一个通用函数来使用此代码解析对象列表 //常用函数公共 列表fromJSonList(S ..
发布时间:2021-12-15 09:48:23 Java开发

Android中使用GSON解析复杂的JSON对象

我对 Java 编程比较陌生,需要通过网络解析复杂的 JSON 对象.过去一天我一直在阅读有关 GSON 的文档,但没有多少运气能够完全解析这种类型的结构: {“事件":[{'name' : 'exp','日期':'10-10-2010','标签':[“标签1",“标签2",“标签3"]},...更多活动...],“联系人":[{'name' : '约翰史密斯','日期':'10-10-2010 ..
发布时间:2021-12-13 00:03:05 移动开发

使用 GSON 解析嵌套的 JSON 数据

我正在尝试使用具有以下结构的 Java 中的 gson 解析一些 JSON 数据,但通过查看在线示例,我找不到任何可以完成这项工作的内容. 有人可以提供帮助吗? {“数据":{“ID":[{“东西":{},“价值观":[[123,456],[123,456],[123,456],],"otherStuff":"等等"}]}} 解决方案 您只需要创建一个 Java 类结构来表示 JSON ..
发布时间:2021-12-12 23:32:18 Java开发

使用 GSON 解析 JSON 文件

我想在 JAVA 中使用 GSON 解析这个 JSON 文件: {“描述符":{“应用程序1":{"name" : "mehdi",“年龄":21,"messages": ["msg 1","msg 2","msg 3"]},“应用程序2":{"name" : "mkyong",“年龄":29,"messages": ["msg 11","msg 22","msg 33"]},“应用程序3":{ ..
发布时间:2021-12-12 23:27:17 Java开发