本文使用谷歌的Gson来解析,导入包:
implementation 'com.google.code.gson:gson:2.2.+'

首先在Android studio上安装插件 GsonFormat-Plus,安装好了之后新建一个bean类,然后光标停在类名中按下alt+s(注意:需要新建java文件才能使用,kotlin文件中没反应):

然后把想要转换的json字符串放进去,然后点设置:

一直确认就可以生成bean的实体了。

jsonUtil的工具类:

package com.example.test2;import com.google.gson.Gson;
import com.google.gson.JsonNull;
import com.google.gson.JsonSyntaxException;
import org.json.JSONObject;
import java.lang.reflect.Type;public class JsonUtil {private JsonUtil() {}//饿汉单例private static final JsonUtil instance = new JsonUtil();public static JsonUtil getInstance(){return instance;}private static Gson gson = new Gson();/*** @param src :将要被转化的对象* @return :转化后的JSON串* @MethodName : toJson* @Description : 将对象转为JSON串,此方法能够满足大部分需求*/public static String toJson(Object src) {if (null == src) {return gson.toJson(JsonNull.INSTANCE);}try {return gson.toJson(src);} catch (JsonSyntaxException e) {e.printStackTrace();}return null;}/*** @param json* @param classOfT* @return* @MethodName : fromJson* @Description : 用来将JSON串转为对象,但此方法不可用来转带泛型的集合*/public static <T> Object fromJson(String json, Class<T> classOfT) {try {return gson.fromJson(json, (Type) classOfT);} catch (JsonSyntaxException e) {System.out.println(e.toString() + "------------------------------");e.printStackTrace();}return null;}/*** @param json* @param typeOfT* @return* @MethodName : fromJson* @Description : 用来将JSON串转为对象,此方法可用来转带泛型的集合,如:Type为 new* TypeToken<GiveLikeList<T>>(){}.getType()* ,其它类也可以用此方法调用,就是将List<T>替换为你想要转成的类*/public static Object fromJson(String json, Type typeOfT) {try {return gson.fromJson(json, typeOfT);} catch (JsonSyntaxException e) {e.printStackTrace();}return null;}/*** 获取json中的某个值** @param json* @param key* @return*/public static String getValue(String json, String key) {try {JSONObject object = new JSONObject(json);return object.getString(key);} catch (Exception e) {e.printStackTrace();}return null;}/*** 获取json中的list值** @param json* @return*/public static String getListValue(String json) {try {JSONObject object = new JSONObject(json);return object.getString("list");} catch (Exception e) {e.printStackTrace();}return null;}public static Double getDoubleValue(String json, String key) {try {JSONObject object = new JSONObject(json);return object.getDouble(key);} catch (Exception e) {e.printStackTrace();}return null;}public static int getIntValue(String json, String key) {try {JSONObject object = new JSONObject(json);return object.getInt(key);} catch (Exception e) {e.printStackTrace();}return 0;}
}

使用:

 String str="{\"name\":\"BeJson\",\"url\":\"http://www.bejson.com\",\"links\":[{\"name\":\"Google\",\"url\":\"http://www.google.com\"},{\"name\":\"Baidu\",\"url\":\"http://www.baidu.com\"},{\"name\":\"SoSo\",\"url\":\"http://www.SoSo.com\"}]}";TestBean oo= (TestBean) JsonUtil.getInstance().fromJson(str,TestBean.class);Log.e("wangyao",oo.getName());Log.e("wangyao",oo.getLinks().get(1).getUrl());

java——json工具类(json字符串转实体bean)相关推荐

  1. JSON基础及Java的JSON工具类

    一.JSON基础 定义:JSON(JavaScript Object Notation, JS 对象简谱) 是一种轻量级的数据交换格式.它基于 ECMAScript (欧洲计算机协会制定的js规范)的 ...

  2. java实用工具类——java处理对象转json工具类

    一.引言 json字符串现在是项目中很常用的了,尤其是在写接口返回数据一般都是json格式的.小编最近在看项目中,发现有多处地方用到了java对象转json,但是引用的jar包都是不统一的. 常见的有 ...

  3. 强大的Java Json工具类

    Json解析所需jar包:http://download.csdn.net/detail/u014676619/9238793 工具类: import java.io.BufferedReader; ...

  4. Java常用的格式化Json工具类

    扩展:Java常用工具类汇总 文章目录 前置条件 一.数组格式json转成 `,`隔开的字符串 二.String转List<对象> 三.String转Map 四.未完待续~ 前置条件 导入 ...

  5. Json工具类 - JsonUtils.java

    Json工具类,提供Json与对象之间的转换. 源码如下:(点击下载 - JsonUtils.java . gson-2.2.4.jar ) 1 import java.lang.reflect.Ty ...

  6. SpringBoot的JSON工具类(java),用于前后端分离

    简介 JSON(JavaScript Object Notation, JS对象简谱)是一种轻量级的数据交换格式.它基于 ECMAScript(European Computer Manufactur ...

  7. 阿里巴巴json工具类,map转json字符串,map转bean类型

    1:要求是需要将map转bean类型 //使用json工具类导入阿里巴巴的json包 import com.alibaba.fastjson.JSON; //第一步先将map类型转为json字符串 S ...

  8. 发送http和https请求工具类 Json封装数据

    在一些业务中我们可要调其他的接口(第三方的接口) 这样就用到我接下来用到的工具类. 用这个类需要引一下jar包的坐标 <dependency><groupId>org.jsou ...

  9. Code片段 : .properties属性文件操作工具类 JSON工具类

    摘要: 原创出处:www.bysocket.com 泥瓦匠BYSocket 希望转载,保留摘要,谢谢! "贵专" - 泥瓦匠 一.java.util.Properties API ...

最新文章

  1. 2025年公有云或将服务中国过半数字经济
  2. 每天一道LeetCode-----判断数组中是否存在两个位置上面的值相等并且下标的差小于某个值
  3. Java—JVM的内存
  4. python输入语句是什么意思_Python输入/输出语句
  5. phabricator mysql_Phabricator服务的搭建
  6. 【Java从0到架构师】SpringMVC - 返回值
  7. python图像跟踪代码_python如何实现图像外边界跟踪 python实现图像外边界跟踪代码示例...
  8. qq音乐的歌词接口中例如#58,#46的特殊符号编码使用js进行转义
  9. ceph分布式存储简介
  10. Qt安卓开发环境搭建
  11. java模拟器触屏_jar模拟器触屏版
  12. 遗传算法图解_遗传算法图解指南
  13. python自动换壁纸_Python自动更换壁纸爬虫与tkinter结合
  14. 溜客php0day挖掘,【漏洞预警】PHP7被发现三个0day漏洞,其中一个还
  15. Excel VBA 操作键盘(如:移动方向键,上下左右等)
  16. ThinkPad E450 拆机换电池
  17. 网易汪源:我们怎么做开源
  18. 归一化相关 matlab,matlab – 归一化互相关的基础知识
  19. 软件架构设计原则-里氏替换原则
  20. matlab rho是什么意思,rho(rho值是什么意思)

热门文章

  1. 程序员深夜逆行被拦后崩溃:老板在催我!女朋友在催我!
  2. 【数据安全案例】上海特大非法获取公民个人信息罪案例
  3. 入耳式蓝牙耳机哪款音质好?入耳式降噪蓝牙耳音质排行榜
  4. 后台网站首页制作设计思路
  5. 新奇二合一固态硬盘盒上市
  6. 企业实战(6)修改Harbor镜像仓库默认存储路径
  7. 网络安全渗透测试超全工具包合集
  8. Ubuntu输入法的使用
  9. 2021年起重机械指挥考试技巧及起重机械指挥试题及解析
  10. android腾讯地图经纬度查地址,根据具体地址获取腾讯地图的经纬度