如何使用Gson将Json转换为Java对象?

时间:2016-04-27 17:23:50

标签: java json gson

有没有人可以帮我找到解决方案?

我使用Jersey创建REST Web服务,我构建了一个Web服务并公开它,因此可以在数据库中创建一个新用户。 我还创建了客户端,并使用de Gson Library在POST中向我发送下一个json:

    {
        "name":"myname",
        "userID":"12345",
        "password":"sha1passwordASDESFSGSD",
        "active":"1",
        "profile":"2",
        "job":"Manager"
        }

客户端发送给我后,Json我在我的REST方法中重新发送它。我也可以转换成字符串并打印出来。 但是,如果我尝试转换为对象,则没有任何反应

我正在使用Gson库来完成将Json转换为对象的工作。我放了一些tryCatch但是debuger会跳过那行代码并且不打印任何内容。

 @POST
  @Path("user/in/")
  @Produces("application/json")
  public String InsertUser(InputStream inStr)
  { 

      String line=null, res = "POST 200 > ";
      BufferedReader br = new BufferedReader(new InputStreamReader(inStr));
      try {
            while((line = br.readLine()) != null)
              {             
                    System.out.println(line);
                    res += line;
              }


          }catch (IOException e){ 
              e.printStackTrace(); 
              }
      try{

          User user = new Gson().fromJson(line, User.class);  
          System.out.println(user.getName());

      }catch(Exception e){
          System.out.println("Error al convertir jo object " + e.getCause()  + e.getMessage());
      }

      return "POST 200 > " ;
  }

我的班级用户(该班级也有set和get方法)

public class User {

private String name;
private String userID;
private String password;
private String active;
private String profile;
private String job;
}
// Methods removed for brevity

0 个答案:

没有答案