2017-08-08 10 views
0

私はデータセットを持っています。 { "name1":123 "name2":234 "name3":345 の形式です。 。 。 }JSONデータをセットに保存する方法は?

ここでは、@RestControllerを使用して、これをPostManで読み取っています。私はクラスtest.javaを持っています。 私は@RequestMappingの助けを借りて、ローカルホストを介してこれを実行している

public void testController(@RequestBody String request) 

私は、機能を持っています。上記のデータセットをオブジェクトに1つずつ保存する必要があります。目的は次のとおりです。

public class OperatorClass implements Comparable<OperatorClass>{ 
    private String name; 
    private ArrayList<String> id = new ArrayList<>(); 

    OperatorClass(String name, String id) 
    { 
     add_id(id); 
     add_name(name); 
    } 

このデータを次の方法で保存しようとしていますが、これは間違っていると判断しました。

try { 
     JSONObject array = new JSONObject(request); 
     Iterator<String> stringIterator1 = array.keys(); 
     stringIterator1.next(); 
     ArrayList<String> arrayList = new ArrayList<>(); 
     OperatorClass oco = new OperatorClass(array.keys().,array.get(array.keys().toString()).toString()); 
     System.out.println(oco.get_Name()); 
     System.out.println(oco.get_Id()); 
    } catch (Exception e) { 
     e.printStackTrace(); 
    } 

array.keys()はすべてのname1、name2、name3データを提供するので間違っていることは知っています。私が知りたいのは、このためにちょうど名前1を得る方法です。特定のオブジェクトに挿入するために、それをIDに従うようにする方法。オブジェクトを演算子クラスのセットに保存しようとしました。

+0

申し訳ありませんが、私はこの質問の一部を逃したと感じています。オブジェクトをセットセットに保存しようとしました – needananswerg

+0

質問を編集して不足しているものを追加することができます – amicoderozer

答えて

0

私はこの問題に答えました。我々は、我々が使用

String temp = stringIterator1.next(); 

、代わりの

OperatorClass oco = new OperatorClass(array.keys().,array.get(array.keys().toString()).toString()); 

を使用

OperatorClass oco = new OperatorClass(temp, array.get(temp).toString); 

は単なる文字列のイテレータを使用すると、おそらく、データセットの順で値を表示しないことを覚えておいてくださいハッシュマッピングする。

関連する問題