java对象和json对象互转

在网上找了一大堆 没找到合适的

java 复制代码
import com.fasterxml.jackson.databind.DeserializationFeature;
import com.fasterxml.jackson.databind.JavaType;
import com.fasterxml.jackson.databind.ObjectMapper;
import lombok.extern.slf4j.Slf4j;

import java.io.IOException;
import java.util.List;

@Slf4j
public class JsonUtil {
    public static final ObjectMapper objectMapper = new ObjectMapper();

    static {
        //反序列化时,忽略目标对象没有的属性
        objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
        //objectMapper.disable(SerializationFeature.FAIL_ON_EMPTY_BEANS);
    }

    public static String toJsonString(Object o) {
        try {
            return objectMapper.writeValueAsString(o);
        } catch (Exception e) {
            log.error("JsonProcessingException:", e);
        }
        return "";
    }

    public static <T> T toObject(String s, Class<T> var) {
        try {
            return objectMapper.readValue(s, var);
        } catch (IOException e) {
            log.error("IOException:", e);
        }
        return null;
    }


    public static <T> List<T> toList(String s, Class<T> var) {
        try {
            JavaType javaType = objectMapper.getTypeFactory().constructParametricType(List.class, var);
            return objectMapper.readValue(s, javaType);
        } catch (IOException e) {
            log.error("IOException:", e);
        }
        return null;
    }

}
相关推荐
烤麻辣烫3 分钟前
23种设计模式(新手)-7迪米特原则 合成复用原则
java·开发语言·学习·设计模式·intellij-idea
鹿里噜哩14 分钟前
Spring Authorization Server 打造认证中心(一)项目搭建/集成
java·后端·spring
菠菠萝宝25 分钟前
【Java手搓RAGFlow】-1- 环境准备
java·开发语言·人工智能·llm·openai·rag
Chan1625 分钟前
热点数据自动缓存方案:基于京东 Hotkey 实践
java·数据库·redis·mysql·spring·java-ee·intellij-idea
汤姆yu26 分钟前
基于springboot的智慧家园物业管理系统
java·spring boot·后端
j***294831 分钟前
【SpringBoot】【log】 自定义logback日志配置
java·spring boot·logback
e***09632 分钟前
【Spring】配置文件的使用
java·后端·spring
a***131433 分钟前
【spring专题】编译spring5.3源码
java·后端·spring
n***632733 分钟前
【spring】Spring事件监听器ApplicationListener的使用与源码分析
java·后端·spring
i***486134 分钟前
【spring专题】编译spring5.3源码
java·后端·spring