Advertisement
Guest User

Untitled

a guest
Jun 1st, 2016
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.78 KB | None | 0 0
  1. class User{
  2. public String name;
  3. public String password;
  4. }
  5.  
  6. { sc:"200", msg:"something", userInfo:{name:"n", password:"p"} }
  7.  
  8. Map->contains 3 key-value
  9. "sc"="200"
  10. "msg"="something"
  11. "userInfo"=User(Object Class)
  12.  
  13. Map<String,Object> map = new ObjectMapper().readValue(json, Map.class);
  14.  
  15. public class Request {
  16. public int sc;
  17. public String message;
  18. public User userInfo;
  19. // and/or getters, setters, if you prefer
  20. }
  21.  
  22. Request req = new ObjectMapper().readValue(json, Request.class);
  23.  
  24. import java.util.HashMap;
  25. import java.util.Map;
  26.  
  27. import org.codehaus.jackson.annotate.JsonAnySetter;
  28. import org.codehaus.jackson.annotate.JsonAutoDetect.Visibility;
  29. import org.codehaus.jackson.annotate.JsonMethod;
  30. import org.codehaus.jackson.map.ObjectMapper;
  31.  
  32. public class JacksonFoo
  33. {
  34. public static void main(String[] args) throws Exception
  35. {
  36. // {"sc":"200","msg":"something","userInfo":{"name":"n","password":"p"}}
  37. String jsonInput = "{"sc":"200","msg":"something","userInfo":{"name":"n","password":"p"}}";
  38.  
  39. ObjectMapper mapper = new ObjectMapper().setVisibility(JsonMethod.FIELD, Visibility.ANY);
  40.  
  41. Result result = mapper.readValue(jsonInput, Result.class);
  42. System.out.println(result);
  43. // output:
  44. // Result: userInfo=User: name=n, password=p, otherThings={sc=200, msg=something}
  45. }
  46. }
  47.  
  48. class Result
  49. {
  50. Map otherThings = new HashMap();
  51. User userInfo;
  52.  
  53. @JsonAnySetter
  54. void addThing(String key, Object value)
  55. {
  56. otherThings.put(key, value);
  57. }
  58.  
  59. @Override
  60. public String toString()
  61. {
  62. return String.format("Result: userInfo=%s, otherThings=%s", userInfo, otherThings);
  63. }
  64. }
  65.  
  66. class User
  67. {
  68. String name;
  69. String password;
  70.  
  71. @Override
  72. public String toString()
  73. {
  74. return String.format("User: name=%s, password=%s", name, password);
  75. }
  76. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement