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

}
相关推荐
WIN赢12 分钟前
【性能测试入门_01性能测试jmeter基础实操场景详解】
ide·python·pycharm
GGGGGGGGGGGGGG.2 小时前
使用dockerfile创建镜像
java·开发语言
请为小H留灯2 小时前
Python中很常用的100个函数整理
开发语言·python
七月初七772 小时前
Excel多级联动下拉菜单设置
python·excel·pandas
兮动人3 小时前
SpringBoot加载配置文件的优先级
java·spring boot·后端·springboot加载配置
Serendipity_Carl3 小时前
Pandas数据清洗实战之清洗猫眼电影
python·pycharm·数据分析·pandas
我爱Jack3 小时前
HttpServletRequest 和 HttpServletResponse 区别和作用
java·spring·mvc
yyueshen3 小时前
volatile 在 JVM 层面的实现机制
java·jvm
慕容魏3 小时前
入门到入土,Java学习 day16(算法1)
java·学习·算法
认真的小羽❅3 小时前
动态规划详解(二):从暴力递归到动态规划的完整优化之路
java·算法·动态规划