提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
在上篇博客我们介绍的是FileUtils文件。FileUtils这个文件的主要作用是添加视频裁切方法。今天我们要介绍的是json相关内容。
JSON 是一种存储和交换数据的语法。json本质就是字符串, json数据 是用在语言里面使用的, ( 语言有java,c#,js )
json对象:的意思就是一组键值对的数据对象,在JavaScript里面就是JavaScript的对象,在c#(控制器就叫c#写法),java里面就是java的json对象(类/VO)。
在这个项目里,为了我们更方便的储存临时数据和对数据进行提取,我们用json文件对相应的的数据进行提取。
在上述我们对json进行了简单的介绍以后,我们来看源代码。对象转换为json字符串还有json字符串转换为对象即可。
package com.whty.zdxt.multimedia.util;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.DeserializationFeature;
import com.fasterxml.jackson.databind.ObjectMapper;
import java.io.IOException;
class JsonUtils {
private static final ObjectMapper mapper = new ObjectMapper();
static {
mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
}
/**
* 对象转换为json字符串
*/
public static String toString(Object obj) {
if (obj == null) {
return null;
}
if (obj.getClass() == String.class) {
return (String) obj;
}
String s = null;
try {
s = mapper.writeValueAsString(obj);
} catch (JsonProcessingException e) {
e.printStackTrace();
throw new RuntimeException("Object转JSON失败");
}
return s;
}
/**
* json字符串转换为对象
*/
public static <T> T toBean(String json, Class<T> tClass) {
T t = null;
try {
t = mapper.readValue(json, tClass);
} catch (IOException e) {
e.printStackTrace();
throw new RuntimeException("JSON转Object失败");
}
return t;
}
}