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;
    }

}
相关推荐
荷蒲2 分钟前
【小白量化智能体】应用5:编写通达信股票交易指标及生成QMT自动交易Python策略程序
开发语言·python
大模型真好玩11 分钟前
深入浅出LangChain AI Agent智能体开发教程(一)—认识LangChain&LangGraph
人工智能·python·mcp
JouJz16 分钟前
设计模式之代理模式:掌控对象访问的优雅之道
java·spring·设计模式·系统安全·代理模式
lovix1217 分钟前
java进阶(三):单例、工厂、模版方法与代理模式详解
java·开发语言
医工交叉实验工坊29 分钟前
R 语言绘制 10 种精美火山图:转录组差异基因可视化
python·信息可视化·r语言
ta叫我小白31 分钟前
Spring Boot 设置滚动日志logback
java·spring boot·spring·logback
永卿00136 分钟前
设计模式-观察者模式
java·前端·设计模式
C雨后彩虹41 分钟前
行为模式-观察者模式
java·观察者模式·设计模式
天天摸鱼的java工程师41 分钟前
百万数据导出Excel:从新手坑到老鸟方案
java·后端·面试
愿你天黑有灯下雨有伞41 分钟前
从数据库到播放器:Java视频续播功能完整实现解析
java·数据库·音视频