如何在&中使用JSONObject?出于泽西REST服务W / NATURAL表示法?

时间:2014-03-21 13:59:50

标签: rest jersey

好的,我有一个Jersey REST服务,我想使用JSONObject作为输入和输出。方法是POST。问题是在这种情况下使用Pojos是不合适的,所以我宁愿避免开销。自然符号很重要。重点是我想要一个非常宽容的系统,并且基本上接受任何合法的JSON。我还需要保留原始形式的JSON。

  1. 可能的?
  2. 如何?

1 个答案:

答案 0 :(得分:0)

没有什么可以强迫你把POJO当作你的POST参数。它可以是一个String,在这种情况下,它将是一个JSON字符串,您可以轻松地映射到JSONObject和从JSONObject映射。

@POST
public void post_something( String json ) {
    JSONObject jsonObject = new JSONObject( json );
    LOG.info( "Posting: {}", props.get( "name" );
}

然后你就可以发送" {\"名称":" \ William Burroughs \"}"到您的邮寄请求。您也可以轻松地从地图转到JSON字符串。例如:

   @GET
   public String get_something() {
       JSONObject object = myservice.getJSONOBject();
       return object.toString();
   }