2016-11-11 35 views
0

我發送一組數據作爲json從ajax函數的對象數組到我的spring mvc控制器方法。即。如何在spring-mvc控制器中重複提取從ajax請求作爲Json數據發送的數據?

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

我需要單獨提取這些數據項,大小和數量,這樣我可以養活領域的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();} 

當我登錄時的結果在控制檯中,阿賈克斯成功的功能,僅顯示爲{}。 我正在做這個表單提交按鈕點擊,這是否是錯誤的呢?如果是的話 何時以及如何在控制器中重複提取這些數據以便將它們發送給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

我想這個..但這並沒有工作,但.. – SMash

相關問題