Gaofangye

Gaofangye

Jackson 操作 json 的一些通用操作

公共部分#

private static final ObjectMapper OBJECT_MAPPER = new ObjectMapper();

public static ObjectMapper getObjectMapper() {
    return OBJECT_MAPPER;
}

將 json 轉換成帶有泛型的 class#

/**
 * 將 json 轉換成帶有泛型的 class
 *
 * @param json     json
 * @param javaType 泛型類
 * @param <T>      泛型
 * @return 泛型實體類
 */
public static <T> T toBean(String json, JavaType javaType) {
    try {
        return OBJECT_MAPPER.readValue(json, javaType);
    } catch (Exception e) {
        log.error("Jackson 將 json 轉換成帶有泛型的 Class 對象失敗, 失敗原因: {}", e.getMessage(), e);
        throw new RuntimeException(e);
    }
}

用例:

JavaType javaType = getObjectMapper().getTypeFactory().constructParametricType(ReqEntityPublic.class, UserDTO.class);
ReqEntityPublic<UserDTO> reqEntityPublic = toBean(jsonStr, javaType);
載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。