我必须处理动态JSON响应。
之前,我使用如下类和注释:
public class ChatResponse {
@SerializedName("status")
private int status;
@SerializedName("error")
private String error;
@SerializedName("response")
private Talk response;
public int getStatus() {
return status;
}
public String getError() {
return error;
}
public Talk getResponse() {
return response;
}
}
当状态为1(成功)时,将onResponse
被触发,我可以得到一个ChatResponse对象。但是,当状态为0时,响应在JSON表示中为false,并且失败(onFailure
触发)。
我想创建我的自定义转换器,这个问题有一个很好的示例,但是该示例适用于Retrofit 1。
我必须创建一个extends类Converter.Factory
,但是我不知道如何重写此类的方法。
其实我有下一个:
@Override
public Converter<ResponseBody, ?> fromResponseBody(Type type, Annotation[] annotations) {
return super.fromResponseBody(type, annotations);
}
@Override
public Converter<?, RequestBody> toRequestBody(Type type, Annotation[] annotations) {
return super.toRequestBody(type, annotations);
}
我现在如何自己解析JSON响应?
提前致谢。
我一直在寻找有关如何为Retrofit 2实现自定义转换器的简单示例。不幸的是没有找到。
我找到了这个例子,但至少对我而言,它太复杂了。
很高兴,我找到了解决方案。
此解决方案是要使用的GSON deserializers
。
我们不需要创建自定义转换器,只需要自定义即可GSON converter
。
这是一个很棒的教程。这是我用来解析问题中描述的JSON的代码:
Login Deserializer:定义如何将JSON解析为我们的目标类的对象(使用条件和我们需要的任何东西)。
定制GSON转换器:构建使用我们的定制解串器的GSON转换器。
主要内容:JSF自定义转换器实例我们可以在JSF中创建自己的自定义转换器。 以下列表是我们可以在JSF中创建自定义转换器的步骤。 通过实现接口创建一个转换器类。 实现上述接口的和方法。 使用注解为自定义转换器分配唯一的ID。 JSF自定义转换器实例 打开 NetBeans IDE 创建一个Web工程:CustomConverter,其目录结构如下所示 - 创建以下文件代码,文件:index.xhtml 的代码内容如下所示 - 文
I'v开始寻找很好的解决方案,如何使用Spring CassandraOperations很好地持久化实体。问题的出现是因为我的实体中的某些字段不支持cassandra,例如joda DateTime。 解决方法是在java类型的同一实体中有其他字段。util。Date而不是joda DateTime,用@Transient标记未要求的字段。但这并不干净,所以我开始寻找自动自定义转换。 目前,sp
实际上,我们正在使用fetchInto()将结果转换为对象列表。 例如: 。
问题内容: 我正在寻找一种用于SQL中自定义单位转换的解决方案,我公司使用的数据库是Microsoft SQL Server,因此我需要编写一个SQL以返回基于“单位转换表”的转换因子 说: 单位换算表: 问题:如果我有10盒,以克为单位的鸡翅的期末存货是多少? 如何编写此sql返回“转换因子”? 提前致谢 问题答案: 我认为递归表最好找到从您期望的单位到期望的单位之间的路径。这样的事情(这假设数
由来 Hutool中类型转换最早只是一个工具类,叫做“Convert”,对于每一种类型转换都是用一个静态方法表示,但是这种方式有一个潜在问题,那就是扩展性不足,这导致Hutool只能满足部分类型转换的需求。 解决 为了解决这些问题,我对Hutool中这个类做了扩展。思想如下: Converter 类型转换接口,通过实现这个接口,重写convert方法,以实现不同类型的对象转换 ConverterR
在我的wicket应用程序中,我想对一些具有double(原始类型为“double”,而不是“double”类型)值的文本字段使用我自己的转换器。