欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Json轉換工具類

 更新時間:2019年01月16日 14:09:07   作者:Haozz_1994  
今天小編就為大家分享一篇關于Json轉換工具類,小編覺得內容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧

Json字符串是常用的數(shù)據(jù)格式,下面提供一個Json和JavaBean轉換的工具類,它其實也是基于jackson的:

package com.csdn.myboot.utils;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.JavaType;
import com.fasterxml.jackson.databind.ObjectMapper;
import java.util.List;
/**
 * @Title: JsonUtils.java
 * @Package com.lee.utils
 * @Description: 自定義響應結構, 轉換類
 * Copyright: Copyright (c) 2016
 * Company:Nathan.Lee.Salvatore
 * @author leechenxiang
 * @date 2016年4月29日 下午11:05:03
 * @version V1.0
 **/
public class JsonUtils {
  // 定義jackson對象
  private static final ObjectMapper MAPPER = new ObjectMapper();
  /**
   * 將對象轉換成json字符串。
   * <p>Title: pojoToJson</p>
   * <p>Description: </p>
   * @param data
   * @return
   **/
  public static String objectToJson(Object data) {
   try {
  String string = MAPPER.writeValueAsString(data);
  return string;
 } catch (JsonProcessingException e) {
  e.printStackTrace();
 }
   return null;
  }
  /**
   * 將json結果集轉化為對象
   * @param jsonData json數(shù)據(jù)
   * @param clazz 對象中的object類型
   * @return
   **/
  public static <T> T jsonToPojo(String jsonData, Class<T> beanType) {
    try {
      T t = MAPPER.readValue(jsonData, beanType);
      return t;
    } catch (Exception e) {
     e.printStackTrace();
    }
    return null;
  }
  /**
   * 將json數(shù)據(jù)轉換成pojo對象list
   * <p>Title: jsonToList</p>
   * <p>Description: </p>
   * @param jsonData
   * @param beanType
   * @return
   **/
  public static <T>List<T> jsonToList(String jsonData, Class<T> beanType) {
   JavaType javaType = MAPPER.getTypeFactory().constructParametricType(List.class, beanType);
   try {
   List<T> list = MAPPER.readValue(jsonData, javaType);
   return list;
 } catch (Exception e) {
  e.printStackTrace();
 }
   return null;
  }
}

測試:

@ResponseBody
  @RequestMapping("/hello")
  public String hello(){
    UserDomain user7 = new UserDomain();
    user7.setUserId(7);
    user7.setUserName("Cristiano Ronaldo");
    user7.setPassword("abc123");
    user7.setPhone("13900000000");
    String cr7 = JsonUtils.objectToJson(user7);
    String c = "{\"userId\":7,\"userName\":\"Cristiano Ronaldo\",\"password\":\"abc123\",\"phone\":\"13900000000\"}";
    UserDomain u = JsonUtils.jsonToPojo(c, UserDomain.class);
    System.out.println(u.toString());
    String listc = "[ "+c+" ]";
    List<UserDomain> list = JsonUtils.jsonToList(listc,UserDomain.class);
    System.out.println(list);
    return cr7;
  }

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對腳本之家的支持。如果你想了解更多相關內容請查看下面相關鏈接

相關文章

  • java數(shù)據(jù)結構實現(xiàn)雙向鏈表功能

    java數(shù)據(jù)結構實現(xiàn)雙向鏈表功能

    這篇文章主要為大家詳細介紹了java數(shù)據(jù)結構實現(xiàn)雙向鏈表功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-11-11
  • Java基礎之代碼死循環(huán)詳解

    Java基礎之代碼死循環(huán)詳解

    這篇文章主要介紹了Java基礎之代碼死循環(huán)詳解,文中有非常詳細的代碼示例,對正在學習java基礎的小伙伴們有非常好的幫助,需要的朋友可以參考下
    2021-04-04
  • 自定義application.yml配置項方式

    自定義application.yml配置項方式

    這篇文章主要介紹了自定義application.yml配置項方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-07-07
  • SpringBoot整合Flink CDC實現(xiàn)實時追蹤mysql數(shù)據(jù)變動

    SpringBoot整合Flink CDC實現(xiàn)實時追蹤mysql數(shù)據(jù)變動

    我們將整合Spring Boot和Apache Flink CDC(Change Data Capture)來實現(xiàn)實時數(shù)據(jù)追蹤,下面是一個基本的實踐流程代碼,包括搭建Spring Boot項目、整合Flink CDC以及實現(xiàn)數(shù)據(jù)變動的實時追蹤,需要的朋友可以參考下
    2024-07-07
  • java中關于getProperties方法的使用

    java中關于getProperties方法的使用

    這篇文章主要介紹了java中關于getProperties方法的使用,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • Spring security自定義用戶認證流程詳解

    Spring security自定義用戶認證流程詳解

    這篇文章主要介紹了Spring security自定義用戶認證流程詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-03-03
  • Java中的lambda和stream實現(xiàn)排序

    Java中的lambda和stream實現(xiàn)排序

    這篇文章主要介紹了Java中的lambda和stream實現(xiàn)排序,文章圍繞主題展開詳細的內容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-09-09
  • Java8 Stream中對集合數(shù)據(jù)進行快速匹配和賦值的代碼示例

    Java8 Stream中對集合數(shù)據(jù)進行快速匹配和賦值的代碼示例

    這篇文章主要介紹了Java8 Stream中如何對集合數(shù)據(jù)進行快速匹配和賦值,文中通過代碼示例為大家介紹的非常詳細,具有一定的參考價值,需要的朋友可以參考下
    2023-06-06
  • 淺談maven的jar包和war包區(qū)別 以及打包方法

    淺談maven的jar包和war包區(qū)別 以及打包方法

    下面小編就為大家分享一篇淺談maven的jar包和war包區(qū)別 以及打包方法,具有很好的參考價值,希望對大家有所幫助
    2017-11-11
  • 淺談一下Java中的堆和棧

    淺談一下Java中的堆和棧

    這篇文章主要介紹了一下Java中的堆和棧,Java數(shù)據(jù)類型在執(zhí)行過程中存儲在兩種不同形式的內存中:棧和堆,它們通常由運行Java虛擬機(JVM)的底層平臺維護,需要的朋友可以參考下
    2023-04-04

最新評論