关于String Json 与其他类型数据转换的总结:
一:关于自己遇到的坑:
跨域请求获取到 String Json(GSON处理) 数据后处理转换为实体类进行存储:
跨域 return Gson.toJson(map);
通过Http等方法获取请求结果为 StringBuffer (此过程不加赘述,自行baidu),
处理 结果 buffer(Test测试):

Test中List 数据格式:
[
{"Filesystem":"/dev/mapper/vg_gsbwapp1-lv_root","Size":"485G","Used":"60G","Avail":"401G","UseP":"13%","Mountedon":"/","IPID":1},
{"Filesystem":"tmpfs","Size":"7.7G","Used":"72K","Avail":"7.7G","UseP":"1%","Mountedon":"/dev/shm","IPID":1},
{"Filesystem":"/dev/sda2","Size":"485M","Used":"39M","Avail":"421M","UseP":"9%","Mountedon":"/boot","IPID":1},
{"Filesystem":"/dev/sda1","Size":"200M","Used":"260K","Avail":"200M","UseP":"1%","Mountedon":"/boot/efi","IPID":1},
{"Filesystem":"/dev/mapper/vg_gsbwapp1-lv_home","Size":"49G","Used":"2.6G","Avail":"44G","UseP":"6%","Mountedon":"/home","IPID":1}
]
注意:
String retule = gson.toJson(disk_re.get(disk_i));
坑: String retule = disk_re.get(disk_i).toString(); 此方法转换String类型之后字符串内部结构发生变化,使用 Gson.fromJson(String json,T<Class>)时出现异常 .toString() 之后数据格式变为:
{Filesystem=/dev/mapper/vg_gsbwapp1-lv_root,Size=485G,Used=60G,Avail=401G,UseP=13%,Mountedon=/,IPID=1.0} 二: 总结Gson转换用法
import com.google.gson.reflect.TypeToken;
import java.util.List;
import java.util.Map;
private static Gson gson = null;
gson = new Gson();
}
}
* 转成json
*/
public static String GsonString(Object object) {
String gsonString = null;
if (gson != null) {
gsonString = gson.toJson(object);
}
return gsonString;
}
* 转成bean
*/
public static <T> T GsonToBean(String gsonString, Class<T> cls) {
T t = null;
if (gson != null) {
t = gson.fromJson(gsonString, cls);
}
return t;
}
* 转成list
*/
public static <T> List<T> GsonToList(String gsonString, Class<T> cls) {
List<T> list = null;
if (gson != null) {
list = gson.fromJson(gsonString, new TypeToken<List<T>>() {
}.getType());
}
return list;
}
* 转成list中有map的
*/
public static <T> List<Map<String, T>> GsonToListMaps(String gsonString) {
List<Map<String, T>> list = null;
if (gson != null) {
list = gson.fromJson(gsonString,
new TypeToken<List<Map<String, T>>>() {
}.getType());
}
return list;
}
* 转成map的
*/
public static <T> Map<String, T> GsonToMaps(String gsonString) {
Map<String, T> map = null;
if (gson != null) {
map = gson.fromJson(gsonString, new TypeToken<Map<String, T>>() {
}.getType());
}
return map;
}
Object 转map
*/
static <T> Object ObjectToMaps(Object object) {
if (object == null) {
return null;
}
if (object instanceof Integer || object instanceof String || object instanceof Double ||
object instanceof Float || object instanceof Long || object instanceof Boolean ||
object instanceof Date || object instanceof List) {
return object;
}
/*if (object instanceof HibernateProxy) {
System.out.println("object instanceof HibernateProxy");
}
Gson gson = new GsonBuilder()
.registerTypeAdapterFactory(HibernateProxyTypeAdapter.FACTORY)
.create();*/
Map<String, T> map = null;
map = gson.fromJson(gson.toJson(object), new TypeToken<Map<String, T>>() {
}.getType());
return map;
}
}
关于String Json 与其他类型数据转换的总结:的更多相关文章
- PHP 将json的int类型转换为string类型 解决php bigint转科学计数法的问题
/** * 将json的int类型转换为string类型 * @param $str * @param int $minLength 最小的转换位数,即只有大于等于这个长度的数字才会被转换为字符串 * ...
- 第一百二十七节,JavaScript,JSON数据类型转换,数据转换成字符串,字符串转换成数据
第一百二十七节,JavaScript,JSON数据类型转换,数据转换成字符串,字符串转换成数据 学习要点: 1.JSON语法 2.解析和序列化 前两章我们探讨了XML的结构化数据,但开发人员还是觉得这 ...
- Json序列反序列类型处理帮助类
Json序列反序列类型处理帮助类. JSON反序列化 JSON序列化 将Json序列化的时间由/Date(1294499956278+0800)转为字符串 将时间字符串转为Json时间 using S ...
- 自定义JsonResult处理JSON序列化DateTime类型数据(Ext4.2+ASP.NET MVC 4)
最近项目中前台页面使用Extjs4.2 ,在后台ASP.NET MVC4返回的DateTime类型的数据错返回的DateTime类型的JsonResult的结果中的值是“\/Date(13784461 ...
- spring boot @ResponseBody转换JSON 时 Date 类型处理方法,Jackson和FastJson两种方式,springboot 2.0.9配置fastjson不生效官方解决办法
spring boot @ResponseBody转换JSON 时 Date 类型处理方法 ,这里一共有两种不同解析方式(Jackson和FastJson两种方式,springboot我用的1.x的版 ...
- response.setContentType()的String参数及对应类型(转)
response.setContentType(MIME)的作用是使客户端浏览器,区分不同种类的数据,并根据不同的MIME调用浏览器内不同的程序嵌入模块来处理相应的数据. 例如web浏览器就是通过MI ...
- SpringMVC返回Json,自定义Json中Date类型格式
http://www.cnblogs.com/jsczljh/p/3654636.html —————————————————————————————————————————————————————— ...
- C# 字符串string类型转换成DateTime类型 或者 string转换成DateTime?(字符串转换成可空日期类型)
在c#中,string类型转换成DateTime类型是经常用到的,作为基本的知识,这里在此做个小结.一般来说可以使用多种方法进行转换,最常用的就是使用Convert.ToDateTime(string ...
- arguments.callee 调用函数自身用法----JSON.parse()和JSON.stringify()前端js数据转换json格式
arguments.callee 调用函数自身用法 arguments.callee 在哪一个函数中运行,它就代表哪个函数. 一般用在匿名函数中. 在匿名函数中有时会需要自己调用自己,但是由于是匿名函 ...
随机推荐
- 2、ES6结构赋值和模板字符串
ES6允许按照一定的模式,从数组和对象中提取值,这被称为结构,即解开数据的结构 1.数组的解构赋值 let [a,b] = [1,2] let [a,b,c=100] = [1,2] //c的默认值为 ...
- 1、ES6声明变量的方式
1.es5的声明方式var的问题 1)是var在同一个作用域内部,是可以重复声明一个变量的,后面的会把前面的覆盖掉 2)var存在变量提升到的问题,就是在使用var声明变量前是可以先使用此变量的 2. ...
- spring线程池的应用
加载xml文件 在ApplicationContext.xml文件里面添加 xmlns:task="http://www.springframework.org/schema/task&qu ...
- vs2017发布后宕机,没有响应解决方法
找到项目下:Properties\PublishProfiles 删除:FolderProfile.pubxml.user
- ImageSwitcher 图片切换器
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android=&quo ...
- flutter中使用shared_preferences的存储
添加依赖 shared_preferences: ^+ 工具类 import 'dart:async'; import 'package:shared_preferences/shared_prefe ...
- openresty开发系列30--openresty中使用http模块
OpenResty默认没有提供Http客户端,需要使用第三方提供的插件 我们可以从github上搜索相应的客户端,比如https://github.com/pintsized/lua-resty-ht ...
- centos7.6环境zabbix3.2源码编译安装版升级到zabbix4.0长期支持版
zabbix3.2源码编译安装版升级到zabbix4.0长期支持版 项目需求: .2版本不再支持,想升级成4.0的长期支持版 环境介绍: zabbix服务端是编译安装的,数据库和web在一台机器上 整 ...
- Linux记录-Shell自动化部署批量建立用户和批量SSH配置(转载)
if [ ! $# -eq 2 ] ; then echo "请输入用户名和密码以空格分开!" exit else name="$1" passwd=" ...
- break 和 continue 的用法
break 是结束循环 continue 是结束本次循环,接下下一个循环