【测试jasn】卧疾丰暇豫,翰墨时间作。这篇文章主要讲述测试jasn相关的知识,希望能为你提供帮助。
public static Object wrap(Object object) {//核心方法:将目标对象包裹成一整个JSONObject中的value对象
try {
if (object == null) {
return NULL;
}
//对于基本数据类型,直接进行使用
if (object instanceof JSONObject || object instanceof JSONArray
|| NULL.equals(object) || object instanceof JSONString
|| object instanceof Byte || object instanceof Character
|| object instanceof Short || object instanceof Integer
|| object instanceof Long || object instanceof Boolean
|| object instanceof Float || object instanceof Double
|| object instanceof String || object instanceof BigInteger
|| object instanceof BigDecimal || object instanceof Enum) {
return object;
}
//对于集合类型将作为一个JSONArray
if (object instanceof Collection) {
Collection<
?>
coll = (Collection<
?>
) object;
return new JSONArray(coll);
}
//对于一个数组类型将作为一个JSONArray
if (object.getClass().isArray()) {
return new JSONArray(object);
}
//对于一个Map类型
if (object instanceof Map) {
Map<
?, ?>
map = (Map<
?, ?>
) object;
return new JSONObject(map);
}
Package objectPackage = object.getClass().getPackage();
String objectPackageName = objectPackage != null ? objectPackage
.getName() : "";
if (objectPackageName.startsWith("java.")
|| objectPackageName.startsWith("javax.")
|| object.getClass().getClassLoader() == null) {
return object.toString();
}
return new JSONObject(object);
} catch (Exception exception) {
return null;
}
}
推荐阅读
- ssh配置临时反向代理
- 03 django 框架 ORM 创建表关系,django请求生命周期流程图,版本区别
- Linux type命令有什么作用(如何使用?)
- 云计算2.0时代,云巨头如何提升用户体验赢得竞争优势
- zabbix编译安装后启动偶然的错误,一个库文件异常
- CCRC信息安全服务资质 你了解吗()
- EasyNVR视频广场按需播放HLS直播流总是断流的原因
- 全面了解知识产权管理体系
- 博客园文章