开发指南142-类和字符串转换

复制代码
这个不废话,直接上代码:

package org.qlm.util;

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.TypeReference;
import com.alibaba.fastjson.parser.Feature;
import com.alibaba.fastjson.serializer.SerializerFeature;

public class Object2JsonUtil {
    public static String object2String(Object o) {
        String featureJson = JSON.toJSONString(
                o,
                SerializerFeature.PrettyFormat, // 美化输出(1.2.83的特性名和2.x略有差异)
                SerializerFeature.WriteMapNullValue, // 输出null字段
                SerializerFeature.WriteDateUseDateFormat // 日期转字符串(默认格式yyyy-MM-dd HH:mm:ss)
        );
        return featureJson;
    }

    /**
     * 通用泛型反序列化工具方法(Fastjson 1.2.83)
     * json JSON字符串
     * typeReference 泛型类型引用(如new TypeReference<Result<User>>() {})
     * <T> 目标泛型类型
     * 反序列化后的泛型对象
     */
    public static <T> T String2Object(String json, TypeReference<T> typeReference) {
        // 添加常用Feature:支持日期格式、允许单引号、忽略未知字段
        return JSON.parseObject(
                json,
                typeReference,
                Feature.AllowSingleQuotes,
                Feature.IgnoreNotMatch
        );
    }
}

一直欣赏一句话,代码就是最好的文档。加好注释的代码,就无需再看文档了。代码和文档合一,天下无敌。

相关推荐
MepSUxjvy2 分钟前
拆解 OpenHands(11)--- Runtime主要组件
java·windows·microsoft
lsx20240612 分钟前
传输对象模式
开发语言
ch.ju15 分钟前
Java Programming Chapter 4——Member method
java·开发语言
笨蛋不要掉眼泪18 分钟前
Java并发编程:ReentrantLock与AQS原理剖析
java·开发语言·并发
兰令水22 分钟前
topcode【随机算法题】【2026.5.22打卡-java版本】
java·算法·leetcode
Dicky-_-zhang22 分钟前
敏感数据加密存储实战
java·jvm
念何架构之路24 分钟前
Go依赖管理
开发语言·后端·golang
liudanzhengxi25 分钟前
CUDA转OpenCL:跨平台内核迁移实战
开发语言
吃好睡好便好28 分钟前
用if…elseif…end语句输出成绩等级
开发语言·前端·javascript·数据库·学习·matlab·信息可视化
努力努力再努力wz29 分钟前
【Redis入门系列】:Redis 内部编码机制与 String 深度解析:SDS 底层实现、三种编码与核心命令详解
c语言·开发语言·数据结构·数据库·c++·redis·缓存