gpt4 book ai didi

java - 处理大量传入数据的简单方法(来自使用控制台的用户)

转载 作者:行者123 更新时间:2023-12-01 13:34:59 25 4
gpt4 key购买 nike

处理用户写入控制台的大量数据(json 字符串)(一次读取一行)的好方法是什么。需要处理 json,然后将其设置为某个 HashMap /嵌入式数据库。

这是一个小而简单的 spring 项目,因此需要使事情尽可能简单。

一旦程序退出(由用户),就无需保留数据。

编辑:

我更关心的是程序处理输入的速度足够快,不会导致明显的延迟,而不是实际使用的 json 库。从这个意义上说,使用嵌入式数据库或包装 HashMap 的简单 POJO 会更有效(假设数据量可以保存在内存中)

最佳答案

正如我在评论中所说,你可以这样做:

import com.google.gson.Gson;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Main
{
public static void main(String[] args) throws InterruptedException
{
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(System.in));
StringBuilder json = new StringBuilder();
String line = null;

try
{
while (!(line = bufferedReader.readLine()).equals("#"))
{
json.append(line);
}

System.out.println(json);
Test test = new Gson().fromJson(json.toString(), Test.class);
System.out.println(test);
} catch (IOException e) {
e.printStackTrace();
}
}
}

class Test
{
private int hello;
private int world;

@Override
public String toString() {
return "Test{" +
"hello=" + hello +
", world=" + world +
'}';
}
}

它会读取用户输入,直到他写“#”,我已经使用了 Gson(对我来说最好的 JSON 库)和一个示例 Test 类只是为了进行测试,这是可以的。也许使用一些大的 json 可能会遇到一些问题,但让用户在控制台中编写大的 json 代码可能会很疯狂。如果您需要较长的内容,请使用文件。

关于java - 处理大量传入数据的简单方法(来自使用控制台的用户),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21355256/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com