当前位置: 首页 > 面试题库 >

如何使用gson将数据保存在json文件中?

国高杰
2023-03-14
问题内容

在我的Web应用程序中,我成功使用mybatis在html表中显示了数据。现在,我想将Mysql表的记录保存在一个json文件中并创建一个用户数组,我使用了Gson,问题是文件中只保存了一条记录。谢谢。
结果file.json如下:

{"data":
 [
 {"id":2,"Name":"Mike"}
 ]
}

servlet.java

SqlSession session = MyBatisSqlSessionFactory.getSession();
List<User> users = session.selectList("dao.UserDao.findAll");
for (User u : users) {
    Gson gson = new Gson();
    try {
        JsonWriter  writer = new JsonWriter(new FileWriter("C:\\file.json"));
        writer.beginObject();
        writer.name("data");
        writer.beginArray();
        writer.beginObject();
        writer.name("id").value(t.getId());
        writer.name("name").value(t.getNom());
        writer.endObject();
        writer.endArray();
        writer.endObject();
        writer.close();
    } catch (IOException e) {
        e.printStackTrace();
    }
}

session.close();

问题答案:

您将所有用户写入同一文件,C:\\file.json因此只保存了循环的最后一次迭代。

您可以将对象List<User>转换为json并写入一次(无需循环)

例:

try (Writer writer = new FileWriter("Output.json")) {
    Gson gson = new GsonBuilder().create();
    gson.toJson(users, writer);
}


 类似资料:
  • 我收到的流数据()希望保存在S3中(基本上,对于这个问题,我希望将输出保存在哪里并不重要,但我只是为了以防万一而提到它)。 是否可以将每个(这些是JSON字符串)数据保存到JSON文件中,而不是文件夹中?我以为必须使用这个技巧,但它没有。

  • 我用的是Android Studio。代码Java。通过在设备的内部存储中创建一个文件,我将从edittext中输入的数据保存为json。但它只显示了我最后输入的数据。每一个新数据都会擦除和覆盖另一个数据。我希望它按顺序保存我从edittext中输入的每一个数据,并查看所有这些数据。我如何做到这一点?

  • 问题内容: 我有一个非常简单的JSON,其中包含产品评论,例如: 我想使用GSON将其读入我的Java应用程序中。我建立了一个类来保存每个评论的结果: 要读取JSON文件,我的代码是: 使用此代码,我只能在JSON中检索第一个评论,所以我的问题是:如何遍历所有读者并获得下一个评论?我不需要将评论存储在列表中,只需要访问对象一次。任何帮助都超过了欢迎。 问题答案: 您必须获取列表中的全部数据,然后再

  • 我是python新手,我正在尝试读取文本文件并从文本中收集一些信息。例如,如果文本包含“1.Andrew是XYZ大学的学生,毕业于2020年。”对于上述文本,我要求我的答案是“学生1:Andrew,毕业年份:2020,大学:XYZ”。同样,我需要验证n个学生,并存储n个学生的结果。我只知道这里的基本知识,在这里我可以以不同的格式打开文件,如读、写。。。因此,我对如何进行下一步感到困惑。 任何帮助都

  • 问题内容: 我是Android编程的新手,我想找到如何将json中的数据存储在android的sqlite中。我没有在互联网上找到任何有用的示例,这就是为什么我在这里问。如果您向我展示一个简单的举个例子,我会很高兴。非常感谢! 问题答案: 创建一个具有JSON模型属性的模型类。 在您的模型中创建一个接受(搜索Android开发人员参考)的构造函数。 在构造函数中,使用方法和读取属性的值。 您也可以

  • 问题内容: 是否可以将JSON数据保存到本地文本文件中?因此,稍后我可以通过加载该文件再次使用它,并取回存储的JSON数据。其实我真正想做的是在文本文件中导出JSON数据,以便以后可以用作import.Any的建议或解决方案? 这是我要用于导出到文本的一些示例。 http://jsfiddle.net/k56eezxp/ 问题答案: 是否可以将JSON数据保存到本地文本文件中? 是。当前,链接的j