当前位置: 首页 > 知识库问答 >
问题:

如何使用动态SerializedName注释?

凌俊材
2023-03-14

我有一个json,它在一个领域模型中通过annotaion@SerializedName使用gson进行转换。

但有时在json中,有一个未知的键,我想将它编为字符串。

public class example extend Realmobject{
@SerializedName("example1")
@Expose
private String exampleNr1;
@SerializedName("example2")
@Expose
private String exampleNr2;


private String someOtherValue;
Getter / Setter here...
[
{
"example1": "1234",
"example2": "1234",
"x": "dynamic"}, {
"example1": "1454",
"example2": "165456",
"xy": "dynamic"}]

我在列表woList=gson.fromjson(parentArray,new typeToken>(){}.getType())上序列化了它;

共有1个答案

韩刚洁
2023-03-14

您可以先将其转换为JSONObject。然后您可以在JSONObject中循环访问一组键。

    JSONObject json = gson.fromJson(stringJson, JSONObject.class);
    Iterator<String> set = json.keys();
    while(set.hasNext()) {
        String dynamicAttributeName = set.next();
    }
    json.get(dynamicAttributeName); //to get the value 
 类似资料:
  • 本文向大家介绍在Java中使用Gson使用@SerializedName注释有什么用?,包括了在Java中使用Gson使用@SerializedName注释有什么用?的使用技巧和注意事项,需要的朋友参考一下 @SerializedName注解可以用于序列化的场使用不同的名称,而不是实际的字段名称。我们可以提供期望的序列化名称作为注释属性,Gson可以确保使用提供的名称读取或写入字段。 语法 示例

  • 问题内容: 我如何使用Gson这个网址解析这个json物件:http://apis.skplanetx.com/weather/forecast/3hours ? appKey = 4ce0462a-3884-30ab-ab13-93efb1bc171f&version = 1&lon = 127.9259&lat = 36.991 我如何为该json对象编写Java模型。我不想写每个这样的变量。

  • 问题内容: 我与一个声誉很高的PHP专家进行了讨论: PDO在这里没有用。以及mysql_real_escape_string。质量极差。 这当然很酷,但是老实说我不知道​​建议使用or PDO修复此代码有什么问题: 入这个 ,考虑到JavaScript代码已发送到客户端。 问题答案: 您的建议确实不正确。 不适用于动态表名;它旨在转义仅 由引号分隔的字符串数据 。它不会逃脱反引号字符。这是一个很

  • 问题内容: 当我尝试自动装配Spring RestTemplate时,出现以下错误: 在注释驱动的环境中使用Spring 4。 我的调度程序servlet的配置如下: 我尝试自动连接RestTemplate的类如下: 问题答案: 如果未定义错误,则会看到错误 考虑在配置中定义类型为“ org.springframework.web.client.RestTemplate”的bean。 要么 找不到

  • 我正在学习SpringBoot,在参考文档中有一个例子,我有一个问题。文件的以下部分提到 6.使用@SpringBootApplication注释 可以使用单个@SpringBootApplication注释来启用这三个功能,即: @EnableAutoConfiguration:启用Spring Boot的自动配置机制 @ComponentScan:在应用程序所在的包上启用@Component扫

  • 使用GSON在Android中使用注释的基本目的是什么? 给我一些不同的例子。我不能理解使用它的主要目的。