簡體   English   中英

如何使用 json object 到 java Z65E8800B5C6800AAD896F888B2Arsx2A webservice

[英]how to pass json object to a java rest webservice using jax rs

我需要有關updateGroup方法的方法簽名的幫助。 這是正在傳遞的 json - 它是一系列動作。

    [{"action":"add","key":"104"}]

這是它被傳遞給的方法

@PUT
@Path("/group/{id}")
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
public IRestResponse updateGroup(@PathParam("id") String GroupName,
                                 Object GroupActions){
    //Do Something...
}

GroupActions應該是什么類型才能接收 json。 ? HashMapArrayList ,某種組合?

您可以使用任何您想要的集合類型:List、Collection、ArrayList、HashSet 等; 或者,有時更好的是指定類型的數組。 因此,其中之一:

public IRestResponse updateGroup(..., List<GroupAction> groupActions);
public IRestResponse updateGroup(..., GroupAction[] groupActions);
public IRestResponse updateGroup(..., HashSet<GroupActions> groupActions);

我不太確定為什么其他答案建議您使用 String:這不太可能起作用,因為其中一個原因(因為默認轉換器不會 go 從 JSON/XML 類型返回到 String),但更重要的是,這是不必要的額外工作,沒有任何收獲。

但是,如果您絕對想做手動解析(如果是這樣,請使用 Jackson,這是大多數框架使用的),您可以將輸入作為 InputStream 並將其提供給解析器。 它是使用的最佳“原始類型”,並且沒有注冊處理程序來導致問題。

您是否嘗試過使用 String 類型而不是解析它?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM