2016-11-11 7 views
0

私は、オブジェクトのJson Arrayとしてのデータセットをajax関数からspring mvcコントローラメソッドに送信しています。すなわち、spring-mvcコントローラでオブジェクトのJson配列としてajaxリクエストから繰り返し送信されるデータを抽出する方法はありますか?

[{"item":"Cheese Lover","size":"960.00","qty":"1"},{"item":"Garlic Bread","size":"390.00","qty":"1"},{"item":"pudding3","size":"420.00","qty":"2"}] 

これらのデータをitem、size、qtyとして個別に抽出して、フィールドをSQLにフィードしてデータベースに送信できるようにする必要があります。しかし、私はそれを正しく行う方法がわからないので、ここで立ち往生しています。これはこれまで私が使用していたコントローラーの方法です。

@RequestMapping(value = "/add_package") 
    public @ResponseBody 
    String addPackage(@ModelAttribute("command") Package newPackage, 
         // @RequestBody PackageContent[] content, 
         HttpServletRequest request){ 
     PackageContent packageContent = new PackageContent(); 
     String s=request.getParameter("test"); 

     ObjectMapper objectMapper=new ObjectMapper(); 
     JSONObject obj= new JSONObject(); 

     try { 
      obj=objectMapper.readValue(s, JSONObject.class); 
      obj.get(packageContent.getItem()); 

      /*for(PackageContent content1 : s){ 
       //System.out.println(content1.getItem()); 
       LOGGER.trace("hhh "+content1.getItem()); 
      }*/ 

     } catch (Exception e) { 
      LOGGER.error("error {}",e); 
     } 

     return obj.toString();} 

それだけ{}として示しアヤックス成功機能では、コンソールに結果をIをログに記録します。 フォームの送信ボタンクリックでこれをやっていますが、そうするのは間違っていますか?もしそうなら いつこれらのデータをコントローラで繰り返し抽出してSQLコードに送ることができますか?

答えて

-1
class Items{ 
    private String item;  
    private String qty;  
    private String size; 

//Getters and Setters compulsary because Jackson internally uses getters  
//to set the value  
}  
0
Class ListOfItems{ 
    List<Items> listItems; 
    //Getters and Setters 

// Use Jackson Here to Convert 
ListOfItems itemList = new ObjectMapper().readValue(jsonString, ListOfItems.class); 
} 
+0

私はそれが仕事をdoes't。これを試してみました。.. – SMash

関連する問題