1

良い一日!Javaでは、キーで大きなJSONを効率的に検索する方法はありますか。

私のサンプルJSON:

{
    "my_data": [
        {
            "id": "12",
            "message": "z1",
            "text": "hai"
        },
        {
            "id": "13",
            "message": "z2",
            "text": "get"
        },
        {
            "id": "14",
            "message": "z3",
            "text": "up"
        }
    ]
}

'my_data'JsonArrayは非常に長いです。非常に大きいため、次のように特定の単語を検索するのに時間がかかります。

my_data.get(index).getString("text").contains(SEARCH_STRING)

効率的に検索するための事前定義されたライブラリまたは標準的な手法はありますか?

ありがとうございました。

4

2 に答える 2

2

これは純粋なテキストデータであるため、 Luceneなどの標準のテキスト検索ツールを使用してそれらを処理し、それに基づいてエントリを見つけることができます。

于 2012-04-19T06:50:49.880 に答える
1

高速jsonパーサーはJacksonJavaJSONプロセッサーです が、値を見つけるには文字列全体を順番に読み取る必要があります。したがって、より高速なものが必要な場合は、おそらくJSON以外の形式でデータを保存する必要があり、何らかのインデックスが必要になります。(しかし、それはあなたが何をしたいのか、そしてそれがどれくらい速くなければならないかに依存します...)

于 2012-04-19T06:59:22.340 に答える