草庐IT

java - 让 Gson 对错误的类型抛出异常

我在我的项目中使用Gson将JSON字符串反序列化为Java对象。如果我发出请求,我希望服务器能给出定义明确的响应。服务器将返回我期望的明确定义的响应,或者它会返回一个(同样定义的)错误对象。为了清楚起见:假设我有一个像这样的简单对象:classDummy{privateStringfoo;privateintbar;}和这样的错误对象:classErrorHolder{privateRequestErrorerror;}classRequestError{privateStringpublicMsg;privateStringmsg;}如果我得到像这样的服务器响应{"foo":"He

java - 向 GSON 注册多个适配器不起作用

我在使用GsonBuilder注册多个类型适配器时遇到问题。似乎只有一个会开火,而从不考虑第二个。如果我单独对每一个进行处理,它似乎工作正常。但我需要他们与两者一起工作,似乎我做错了什么。另外,我目前正在使用GSONv2.2.4。Zip对象简单形式:publicclassZip{privateStringzipCode;privateStringcity;privateStringstate;publicZip(){}}ZipSerializer:publicclassZipSerializerimplementsJsonSerializer{@OverridepublicJsonEl

java - Gson 类型适配器与自定义解串器

下面的示例显示了一个包含抽象类(成员)集合的类(俱乐部)。我对是否需要TypeAdapter或JsonDeserializer来使反序列化正常工作感到困惑。序列化在没有任何帮助的情况下工作得很好,但反序列化会抛出异常。为了说明,我构建了以下“克隆”测试。如果有人能展示一个工作示例,我将不胜感激。头等舱packagegson.test;importjava.util.ArrayList;importcom.google.gson.Gson;publicclassClub{publicstaticvoidmain(String[]args){//SetupaClubwith2members

java - Gson - 根据字段值反序列化为特定对象类型

我想根据type字段值将json对象反序列化为特定类型的对象(使用Gson库),例如:[{"type":"type1","id":"131481204101","url":"http://something.com","name":"BLAHBLAH","icon":"SOME_STRING","price":"FREE","backgroundUrl":"SOME_STRING"},{....}]因此type字段将具有不同(但已知)的值。基于该值,我需要将该json对象反序列化为适当的模型对象,例如:Type1Model、Type2Model等。我知道我可以在反序列化之前轻松地做到这

java - 使用 gson 循环 Json 数组

我正在尝试解析一个jsonObject但似乎无法得到它,这就是我得到的。json=(jsondata)JsonParserparser=newJsonParser();JsonObjectrootObj=parser.parse(json).getAsJsonObject();JsonObjectpaymentsObject=rootObj.getAsJsonObject("payments");for(JsonObjectpa:paymentsObject){StringdateEntered=pa.getAsJsonObject().get("date_entered").toSt

Java GSON : Getting the list of all keys under a JSONObject

我已经将GSON作为Java中的JSON解析器,但key并不总是相同的。例如。我有以下JSON:{"TheObjectIalreadyknow":{"key1":"value1","key2":"value2","AnotherObject":{"anotherKey1":"anotherValue1","anotherKey2":"anotherValue2"}}我已经得到了JSONObject“我已经知道的对象”。现在我需要获取此对象的所有JSONElements,这将是“Key1”、“Key2”和“AnotherObject”。提前致谢。编辑:输出应该是一个字符串数组,其中包含J

java - 将 gson.JsonObject 转换为 JSONObject

我有一个gson.JsonObject对象。从中创建org.json.JSONObject对象的最简单方法是什么? 最佳答案 再次从JsonObject获取JSON字符串并在JSONObject中解析JsonObjectgson=newJsonParser().parse("{\"id\":\"value\"}").getAsJsonObject();JSONObjectjo2=newJSONObject(gson.toString()); 关于java-将gson.JsonObject

java - 为什么在启动 Spring Boot 应用程序时会出现 Gson 构建器错误?

我已经下载了eclipse并将springsuit安装进去了。我按照其中一个spring.io指南编写了一个基于JPA的Rest应用程序。当我尝试将它作为springboot应用程序运行时。我收到以下错误。java.lang.NoSuchMethodError:com.google.gson.GsonBuilder.setLenient()Lcom/google/gson/GsonBuilder;为什么会出现此错误?如何修复此错误?这是控制台的完整输出。._________/\\/___'_____(_)______\\\\(()\___|'_|'_||'_\/_`|\\\\\\/__

java - 如何使用 Gson 将 Json 转换为 Java 对象

这个问题在这里已经有了答案:ParseJSONfileusingGSON(3个答案)关闭6年前。假设我有一个json字符串{"userId":"1","userName":"Yasir"}现在我有一个用户类classUser{intuserId;StringuserName;//settersandgetters}现在如何将上面的json字符串转换为用户类对象

java - 在 GWT 客户端代码中使用 Gson 库

我目前正在eclipse中使用GWT2.0用Ja​​va编写Web应用程序。我想知道是否有办法使用Gsonlibrary在GWT应用程序的客户端代码中。如果有办法-请告诉我如何......谢谢! 最佳答案 Gson使用GWT不支持的Java特性,例如反射。因此不可能在GWT客户端代码中使用Gson。 关于java-在GWT客户端代码中使用Gson库,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/qu