当前位置: 首页 > news >正文

html怎么做成网站在线收录

html怎么做成网站,在线收录,wordpress关闭前台编辑功能,降龙网络专业做网站json字符串的处理 【1】解析json字符串(1)如果json格式字符串 ,最外层 是 中括号,表示数组,就使用方法(2)如果json格式字符串,最外层是 大括号,表示对象,就是…

json字符串的处理

  • 【1】解析json字符串
    • (1)如果json格式字符串 ,最外层 是 中括号,表示数组,就使用方法
    • (2)如果json格式字符串,最外层是 大括号,表示对象,就是用方法
    • (3)数组 和 对象可以相互嵌套
    • (4)java遍历修改json数组里的某个字段值
    • (5)java遍历修改更复杂的嵌套json数组里的某个字段值
  • 【2】JSONUtil工作介绍
    • (1)JSON字符串创建
    • (2)JSON字符串解析
    • (3)XML字符串转换为JSON
    • (4)JSON转换为XML
    • (5)JSON转Bean
    • (6)常见JSON操作方法

【1】解析json字符串

java处理json格式字符串,首先转成 JSONArray 或 JSONObject 类型(如果有实际对象类的话,也可以直接转成对象)

(1)如果json格式字符串 ,最外层 是 中括号,表示数组,就使用方法

JSONArray array = JSONArray.parseArray(text);

(2)如果json格式字符串,最外层是 大括号,表示对象,就是用方法

JSONObject result = JSONArray.parseObject(text);

(3)数组 和 对象可以相互嵌套

就相当于 JSONArray 和 JSONObject 可以相互嵌套, JSON对象的用法和java中 List Map 用法是一样的!
1-可以通过JSONArray循环获取每一项的值 有get 和 add 方法 取值 赋值
2-JSONObject 可以 通过 get 和 put 方法取值赋值
处理完数据后,还可以通过 toJSONString方法转为字符串

(4)java遍历修改json数组里的某个字段值

JSONArray feedetailList = data.getJSONArray("feedetailList");
for (int i = 0; i < feedetailList.size(); i++) {feedetailList.getJSONObject(i).put("psnNo",data.getString("psnNo"));
}

(5)java遍历修改更复杂的嵌套json数组里的某个字段值

(1)因为没有具体的对象,所以将json直接转成json数组JSONObject
(2)在取嵌套的内容时,如果是数组就用getJSONArray,如果是对象就用getJSONObject
(3)要往数组里存入值就用add,取值就用get;要往对象里存入值就用set,取值就用get

// 实时更新数据
DataModelRelation dataModelRelation = indDataModel.getDataModelRelation();
String layout = dataModelRelation.getLayout();
// 解析 JSON 字符串为 JSONObject
JSONObject jsonObject = new JSONObject(layout);// 获取最底层的 JSONArray
JSONArray layoutInfo = jsonObject.getJSONArray("cells");
for (int i = 0; i < layoutInfo.size(); i++) {JSONObject cell = layoutInfo.getJSONObject(i);JSONObject data = cell.getJSONObject("data");if (ObjectUtil.isNotNull(data)) {String id = data.get("id").toString();if (ObjectUtil.isNotNull(id)) {IndTable indTable = iIndTableRepo.queryById(Long.valueOf(id));if (ObjectUtil.isNotNull(indTable)) {layoutInfo.getJSONObject(i).getJSONObject("data").set("tableNameZh",indTable.getTableNameZh());}}}
}
jsonObject.set("cells",layoutInfo);
dataModelRelation.setLayout(JSONUtil.toJsonStr(jsonObject));
indDataModel.setDataModelRelation(dataModelRelation);

【2】JSONUtil工作介绍

(1)JSON字符串创建

JSONUtil.toJsonStr可以将任意对象(Bean、Map、集合等)直接转换为JSON字符串。 如果对象是有序的Map等对象,则转换后的JSON字符串也是有序的。

    /*** 转换为JSON字符串* <p>* 被转为JSON的对象** @return JSON字符串*/@Testvoid toJsonStrTest() {//mapSortedMap<Object, Object> sortedMap = new TreeMap<Object, Object>() {private static final long serialVersionUID = 1L;{put("attributes", "a");put("b", "b");put("c", "c");}};//对象Student beanString = new Student(1, 1, 1, "张三");//集合List<Student> list = new ArrayList<>();list.add(new Student(1, 1, 1, "张三"));list.add(new Student(1, 1, 2, "李四"));list.add(new Student(1, 1, 3, "王五"));System.out.println("JSONUtil.toJsonStr(beanString) = " + JSONUtil.toJsonStr(beanString));System.out.println("JSONUtil.toJsonStr(sortedMap) = " + JSONUtil.toJsonStr(sortedMap));System.out.println("JSONUtil.toJsonStr(list) = " + JSONUtil.toJsonStr(list));}

结果

JSONUtil.toJsonStr(beanString) = {"gradeId":0,"studentId":1,"termId":1,"classId":1,"name":"张三"}
JSONUtil.toJsonStr(sortedMap) = {"attributes":"a","b":"b","c":"c"}
JSONUtil.toJsonStr(list) = [{"gradeId":0,"studentId":1,"termId":1,"classId":1,"name":"张三"},
{"gradeId":0,"studentId":2,"termId":1,"classId":1,"name":"李四"},
{"gradeId":0,"studentId":3,"termId":1,"classId":1,"name":"王五"}]

如果我们想获得格式化后的JSON,则:

JSONUtil.toJsonPrettyStr(object);System.out.println("JSONUtil.toJsonPrettyStr(sortedMap) = "+ JSONUtil.toJsonPrettyStr(sortedMap));

结果

JSONUtil.toJsonPrettyStr(sortedMap) = {"attributes": "a","b": "b","c": "c"
}

(2)JSON字符串解析

/*** JSON字符串转JSONObject对象* <p>* JSON字符串** @return JSONObject*/
@Test
void Test() {String html = "{\"name\":\"Something must have been changed since you leave\"}";JSONObject jsonObject = JSONUtil.parseObj(html);System.out.println("jsonObject.getStr(\"name\") = " + jsonObject.getStr("name"));
}

结果

jsonObject.getStr("name") = Something must have been changed since you leave

(3)XML字符串转换为JSON

    /*** XML字符串转为JSONObject**  XML字符串* @return JSONObject*/@Testvoid parseFromXmlTest() {String s = "<sfzh>123</sfzh><sfz>456</sfz><name>aa</name><gender>1</gender>";JSONObject json = JSONUtil.parseFromXml(s);System.out.println("json.get(\"sfzh\") = " + json.get("sfzh"));System.out.println("json.get(\"name\") = " + json.get("name"));}

结果

json.get("sfzh") = 123
json.get("name") = aa

(4)JSON转换为XML

    /*** 转换为XML字符串** @param json JSON* @return XML字符串*/@Testvoid toXmlStrTest() {final JSONObject put = JSONUtil.createObj().set("aaa", "你好").set("键2", "test");// <aaa>你好</aaa><键2>test</键2>final String s = JSONUtil.toXmlStr(put);System.out.println("s = " + s);}

结果

s = <aaa>你好</aaa><2>test</2>

(5)JSON转Bean

我们先定义两个较为复杂的Bean(包含泛型)

    @Datapublic class ADT {private List<String> BookingCode;}@Datapublic class Price {private List<List<ADT>> ADT;}/*** JSON字符串转为实体类对象,转换异常将被抛出** @param <T>        Bean类型* @param jsonString JSON字符串* @param beanClass  实体类对象* @return 实体类对象* @since 3.1.2*/@Testvoid toBeanTest() {String json = "{\"ADT\":[[{\"BookingCode\":[\"N\",\"N\"]}]]}";Price price = JSONUtil.toBean(json, Price.class);System.out.println("price = " + price);}

(6)常见JSON操作方法

put(key, value): 向JSON对象中添加键值对。
get(key): 获取JSON对象中指定键的值。
getString(key): 获取JSON对象中指定键的字符串值。
getInt(key): 获取JSON对象中指定键的整数值。
getJSONObject(key): 获取JSON对象中指定键的嵌套JSON对象。
getJSONArray(key): 获取JSON对象中指定键的JSON数组。
toString(): 将JSON对象转换为字符串。
parse(jsonString): 解析JSON字符串为JSON对象。
toBean(jsonString,class):将JSON转换为Java对象
toJsonStr(object):将Java对象转换为JSON字符串

使用实例

javaCopy codeimport com.example.JSONUtil; // 假设这是的JSONUtil类public class JSONUtilExample {public static void main(String[] args) {// 创建JSON对象JSONUtil jsonUtil = new JSONUtil();jsonUtil.put("name", "John");jsonUtil.put("age", 30);// 将JSON转为字符串String jsonString = jsonUtil.toString();System.out.println("JSON String: " + jsonString);// 解析JSON字符串JSONUtil parsedJSON = JSONUtil.parse(jsonString);String name = parsedJSON.getString("name");int age = parsedJSON.getInt("age");System.out.println("Name: " + name);System.out.println("Age: " + age);//使用JSONUtil.toBean将JSON转换为Java对象//假设从某个来源获取了一个JSON字符串String jsonString = "{\"name\":\"John\",\"age\":30}";Person person = JSONUtil.toBean(jsonString, Person.class);// 使用JSONUtil.toJsonStr将Java对象转换为JSON字符串Person person = new Person("John", 30, new String[]{"Reading", "Gaming"});String jsonStr = JSONUtil.toJsonStr(person);}}
http://www.hkea.cn/news/44880/

相关文章:

  • 番禺建网站公司网站搜索工具
  • 安徽万振建设集团网站长春网站推广公司
  • 网站怎么制作 推广seo超级外链工具免费
  • 中小学网站建设探讨东莞seo整站优化火速
  • php是网站开发的语言吗企业网站的作用
  • 网站站外优化怎么做企业推广app
  • 拉趣网站是谁做的威海网站制作
  • 做宣传海报的网站百度导航2023年最新版
  • 湖南做网站 磐石网络windows优化大师官方免费
  • 制作网站的最新软件如何优化关键词的方法
  • 东莞工作招聘网最新招聘搜索 引擎优化
  • 宁波俄语网站建设免费发广告的平台有哪些
  • 郑州外贸网站建设及维护营销软件商城
  • 泉州百度关键词排名广州网站营销优化qq
  • 怎么做wep网站营销推广活动方案
  • 展示型网站php官方app下载安装
  • 嘉祥网站建设广东省自然资源厅
  • 忘记网站后台密码网站排名软件推荐
  • 怎么查公司网站有没有被收录火爆产品的推广文案
  • 绵阳网站建设 经开区网络教学平台
  • wordpress阅读量没改7个湖北seo网站推广策略
  • 网站建设成功案例方案找培训机构的平台
  • 园林绿化网站建设百度关键词优化公司
  • 个人如何建设网站网络营销方式有哪些分类
  • 北京做百度网站建设电商平台如何推广运营
  • 电脑个人网站怎么做网络销售新手入门
  • 海口网站建设 小黄网络手机百度搜索
  • 太原百度网站建设网站应该如何进行优化
  • 烟台市做网站uc浏览网页版进入
  • 工程信息网站哪家做的较好提高工作效率心得体会