All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.github.rcarlosdasilva.kits.json.JsonHelper Maven / Gradle / Ivy

There is a newer version: 0.2
Show newest version
package io.github.rcarlosdasilva.kits.json;

import java.io.File;

/**
 * 封装JSON处理工具类,使用不同的JSON包来实现当前接口的功能
 * 
 * 

* 暂提供Gson和Jackson两种实现 * * @author Dean Zhao ([email protected]) */ public abstract class JsonHelper { public static final JsonHelper fastjson = new FastJsonHelper(); public static final JsonHelper gson = new GsonHelper(); public static final JsonHelper jackson = new JacksonHelper(); /** * 转成JSON字符串. * * @param obj * 被转换对象 * @return JSON字符串 */ abstract String toJson(Object obj); /** * 根据给定的类型,转换成JSON字符串 * * @param * 目标类型 * @param obj * 被转换对象 * @param clazz * 类型 * @return JSON字符串 */ abstract String toJson(T obj, Class clazz); /** * 将转换后的JSON字符串写入文件. * * @param path * 文件路径 * @param obj * 被转换对象 * @return 是否成功 */ abstract boolean writeJosnToFile(String path, Object obj); /** * 将转换后的JSON字符串写入文件. * * @param file * {@link File} 文件对象 * @param obj * 被转换对象 * @return 是否成功 */ abstract boolean writeJosnToFile(File file, Object obj); /** * 将转换后的JSON字符串写入文件. * * @param * 目标类型 * @param path * 文件路径 * @param obj * 被转换对象 * @param clazz * 类型 * @return 是否成功 */ abstract boolean writeJsonToFile(String path, T obj, Class clazz); /** * 将转换后的JSON字符串写入文件. * * @param * 目标类型 * @param file * {@link File} 文件对象 * @param obj * 被转换对象 * @param clazz * 类型 * @return 是否成功 */ abstract boolean writeJsonToFile(File file, T obj, Class clazz); /** * 将JSON字符串转换成Object对象. * * @param json * JSON字符串 * @return Object对象 */ abstract Object fromJson(String json); /** * 将JSON字符串转换成指定类型的对象. * * @param * 目标类型 * @param json * JSON字符串 * @param clazz * 类型 * @return 指定类型对象 */ abstract T fromJson(String json, Class clazz); /** * 从JSON文件中读取对象. * * @param path * 文件路径 * @return Object对象 */ abstract Object readJsonFromFile(String path); /** * 从JSON文件中读取对象. * * @param file * 文件对象 * @return Object对象 */ abstract Object readJsonFromFile(File file); /** * 从JSON文件中读取指定类型的对象. * * @param * 目标类型 * @param path * 文件路径 * @param clazz * 类型 * @return 指定类型对象 */ abstract T readJsonFromFile(String path, Class clazz); /** * 从JSON文件中读取指定类型的对象. * * @param * 目标类型 * @param file * 文件对象 * @param clazz * 类型 * @return 指定类型对象 */ abstract T readJsonFromFile(File file, Class clazz); }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy