JsonUtils.java 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. package cn.com.goldenwater.utils;
  2. import com.fasterxml.jackson.core.JsonProcessingException;
  3. import com.fasterxml.jackson.databind.JavaType;
  4. import com.fasterxml.jackson.databind.ObjectMapper;
  5. import java.util.List;
  6. /**
  7. * @author imooc
  8. * @Title: JsonUtils.java
  9. * @Package com.imooc.utils
  10. * @Description: json转换类
  11. * Copyright: Copyright (c)
  12. * Company: www.imooc.com
  13. */
  14. public class JsonUtils {
  15. // 定义jackson对象
  16. private static final ObjectMapper MAPPER = new ObjectMapper();
  17. /**
  18. * 将对象转换成json字符串。
  19. *
  20. * @param data
  21. * @return
  22. */
  23. public static String objectToJson(Object data) {
  24. try {
  25. String string = MAPPER.writeValueAsString(data);
  26. return string;
  27. } catch (JsonProcessingException e) {
  28. e.printStackTrace();
  29. }
  30. return null;
  31. }
  32. /**
  33. * 将json结果集转化为对象
  34. *
  35. * @param jsonData json数据
  36. * @param beanType 对象中的object类型
  37. * @return
  38. */
  39. public static <T> T jsonToPojo(String jsonData, Class<T> beanType) {
  40. try {
  41. T t = MAPPER.readValue(jsonData, beanType);
  42. return t;
  43. } catch (Exception e) {
  44. e.printStackTrace();
  45. }
  46. return null;
  47. }
  48. /**
  49. * 将json数据转换成pojo对象list
  50. *
  51. * @param jsonData
  52. * @param beanType
  53. * @return
  54. */
  55. public static <T> List<T> jsonToList(String jsonData, Class<T> beanType) {
  56. JavaType javaType = MAPPER.getTypeFactory().constructParametricType(List.class, beanType);
  57. try {
  58. List<T> list = MAPPER.readValue(jsonData, javaType);
  59. return list;
  60. } catch (Exception e) {
  61. e.printStackTrace();
  62. }
  63. return null;
  64. }
  65. }