泽西岛:如何将自定义DTO发送/传递到泽西岛的服务类

时间:2012-09-04 09:37:39

标签: rest jersey

我正在使用Jersey Framework来开发我的Web服务。我有一个名为UserInfo的DTO对象,其中包含setter和getter。我在用户登录时最初设置此DTO值。如何将此特定于用户的DTO传递给Jersey服务类?

我已经尝试在MultivaluedMap和Form中设置它们但我运气不好。

这是我的代码:

MultivaluedMap<String, String> queryParams = new MultivaluedMapImpl();
queryParams.add("queryTerm", "userdto");

Form f = new Form();
f.add("name", "1001D");

这就是我尝试检索数据的方式。

public class HaiService {
    @GET
    @Produces("application/json")
    @Consumes("application/json")
    public String sayPlainTextHello(@Context UriInfo ui) {

      MultivaluedMap queryParams=ui.getQueryParameters();
      Iterator it=queryParams.keySet().iterator();
      String theKey=null;
      String returnString="";   

      while(it.hasNext()) {
        theKey=(String)it.next();
        System.out.println(queryParams.getFirst(theKey));
      }

      System.out.println("I am called");
      return "Hi";
    }

但我运气不好。通常我的要求是在登录时存储用户特定的数据,然后在服务类内部检索它。

我避免在会话中存储数据,因为用户可能在一个浏览器下登录多个ID,这会生成相同的会话ID,并且有可能为首次登录的用户覆盖数据。 / p>

0 个答案:

没有答案