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

工具型网站有哪些城阳网站开发公司电话

工具型网站有哪些,城阳网站开发公司电话,怎么做门户网站,怎么增加网站首页权重Fastjson2 是 Fastjson 的升级版本#xff0c;提供了更好的性能和扩展性#xff0c;同时也在 API 和功能上做了很多改进。使用 Fastjson2 解析 JSON 数据非常简单#xff0c;支持多种方式来解析 JSON 字符串、嵌套 JSON 对象和数组、以及转换成 Java 对象。下面详细介绍 Fas…Fastjson2 是 Fastjson 的升级版本提供了更好的性能和扩展性同时也在 API 和功能上做了很多改进。使用 Fastjson2 解析 JSON 数据非常简单支持多种方式来解析 JSON 字符串、嵌套 JSON 对象和数组、以及转换成 Java 对象。下面详细介绍 Fastjson2 的常见 JSON 解析用法。 1. 引入 Fastjson2 依赖 在使用 Fastjson2 之前确保项目中包含相应的依赖。 Maven 依赖 dependencygroupIdcom.alibaba.fastjson2/groupIdartifactIdfastjson2/artifactIdversion2.0.31/version !-- 使用最新版本 -- /dependencyGradle 依赖 implementation com.alibaba.fastjson2:fastjson2:2.0.312. JSON 解析 2.1 解析 JSON 字符串为 Java 对象 Fastjson2 使用 JSON.parseObject() 方法将 JSON 字符串转换为 Java 对象。 示例将 JSON 字符串解析为 Java 对象 import com.alibaba.fastjson2.JSON;public class Fastjson2Example {public static void main(String[] args) {String jsonString {\name\:\John\,\age\:25};// 解析 JSON 字符串为 Java 对象Person person JSON.parseObject(jsonString, Person.class);System.out.println(person.getName()); // 输出: JohnSystem.out.println(person.getAge()); // 输出: 25} }class Person {private String name;private int age;// Getters and Setterspublic String getName() { return name; }public void setName(String name) { this.name name; }public int getAge() { return age; }public void setAge(int age) { this.age age; } }2.2 解析嵌套的 JSON 对象 Fastjson2 可以直接解析嵌套的 JSON 对象。你可以通过 getJSONObject() 获取嵌套的 JSONObject然后再继续解析它。 示例解析嵌套的 JSON 对象 import com.alibaba.fastjson2.JSON; import com.alibaba.fastjson2.JSONObject;public class Fastjson2Example {public static void main(String[] args) {String jsonString {\name\:\John\,\address\:{\city\:\Anytown\,\street\:\123 Main St\}};// 解析 JSON 字符串为 JSONObjectJSONObject jsonObject JSON.parseObject(jsonString);// 获取嵌套的 JSON 对象 (address)JSONObject address jsonObject.getJSONObject(address);String city address.getString(city);String street address.getString(street);System.out.println(City: city); // 输出: AnytownSystem.out.println(Street: street); // 输出: 123 Main St} }2.3 解析 JSON 数组 Fastjson2 也可以直接将 JSON 数组字符串解析为 JSONArray。你可以通过 parseArray() 或 parseObject() 方法来处理数组。 示例解析 JSON 数组 import com.alibaba.fastjson2.JSON; import com.alibaba.fastjson2.JSONArray;public class Fastjson2Example {public static void main(String[] args) {String jsonArrayString [{\name\:\John\,\age\:25}, {\name\:\Jane\,\age\:28}];// 将 JSON 数组解析为 ListJSONArray jsonArray JSON.parseArray(jsonArrayString);// 遍历 JSON 数组并解析每个对象for (int i 0; i jsonArray.size(); i) {Person person jsonArray.getObject(i, Person.class);System.out.println(person.getName() - person.getAge());}} }2.4 解析 JSON 字符串为 Map 如果你不需要将 JSON 解析为特定的 Java 对象可以直接解析为 Map 或 List。 示例将 JSON 解析为 Map import com.alibaba.fastjson2.JSON; import java.util.Map;public class Fastjson2Example {public static void main(String[] args) {String jsonString {\name\:\John\,\age\:25};// 将 JSON 解析为 MapMapString, Object map JSON.parseObject(jsonString, Map.class);// 输出 Map 内容System.out.println(map); // 输出: {nameJohn, age25}} }2.5 解析 JSON 数据时的类型转换 Fastjson2 支持复杂的类型转换。你可以将 JSON 解析为 List、Map、以及任意的 Java 类型。 示例JSON 转换为 List 和 Map import com.alibaba.fastjson2.JSON; import java.util.List; import java.util.Map;public class Fastjson2Example {public static void main(String[] args) {String jsonArrayString [{\name\:\John\,\age\:25}, {\name\:\Jane\,\age\:28}];// 将 JSON 数组字符串解析为 ListListMapString, Object personList JSON.parseArray(jsonArrayString, Map.class);System.out.println(personList); // 输出: [{nameJohn, age25}, {nameJane, age28}]} }3. 高级功能 3.1 使用 JSONPath 从 JSON 中提取数据 Fastjson2 提供了 JSONPath 功能支持复杂的查询操作类似于 XPath 的功能。可以使用 JSONPath.eval() 来提取 JSON 数据。 示例使用 JSONPath 提取 JSON 数据 import com.alibaba.fastjson2.JSON; import com.alibaba.fastjson2.JSONPath;public class Fastjson2Example {public static void main(String[] args) {String jsonString {\name\:\John\, \address\:{\city\:\Anytown\,\street\:\123 Main St\}};// 使用 JSONPath 提取城市信息Object city JSONPath.eval(JSON.parse(jsonString), $.address.city);System.out.println(City: city); // 输出: Anytown} }3.2 处理自定义日期格式 你可以为 Fastjson2 设置自定义的日期格式通过 SerializeConfig 配置。 示例自定义日期格式 import com.alibaba.fastjson2.JSON; import com.alibaba.fastjson2.serializer.SerializeConfig;import java.text.SimpleDateFormat; import java.util.Date;public class Fastjson2Example {public static void main(String[] args) {Date date new Date();// 设置自定义日期格式SerializeConfig config new SerializeConfig();config.put(Date.class, new SimpleDateFormat(yyyy-MM-dd HH:mm:ss));// 将日期对象转换为 JSON 字符串String jsonString JSON.toJSONString(date, config);System.out.println(jsonString); // 输出: 2025-01-13 14:30:00} }3.3 反序列化时处理空字段 Fastjson2 在反序列化 JSON 时如果某些字段为空或者不存在它会自动跳过该字段并不会抛出异常。你可以使用 JSONField 注解来控制字段的序列化和反序列化行为。 示例处理空字段 import com.alibaba.fastjson2.JSON; import com.alibaba.fastjson2.annotation.JSONField;public class Fastjson2Example {public static void main(String[] args) {String jsonString {\name\:\John\,\age\:null};// 解析 JSON 字符串时忽略空字段Person person JSON.parseObject(jsonString, Person.class);System.out.println(person.getName()); // 输出: JohnSystem.out.println(person.getAge()); // 输出: 0 (默认值)} }class Person {private String name;JSONField(serialize false) // 不序列化private int age;// Getters and Setterspublic String getName() { return name; }public void setName(String name) { this.name name; }public int getAge() { return age; }public void setAge(int age) { this.age age; } }4. 总结 Fastjson2 提供了强大且简洁的 JSON 解析功能包括 轻松将 JSON 字符串解析为 Java 对象或 Map。支持嵌套的 JSON 对象、数组和复杂类型的解析。支持通过 JSONPath 从 JSON 数据中提取数据。自定义日期格式和序列化配置。处理反序列化时的空字段、字段过滤等。 这些特性使得 Fastjson2 成为一个高效且功能丰富的 JSON 解析工具适用于各种不同的 Java 应用场景。
http://www.hkea.cn/news/14503991/

相关文章:

  • 互联网行业招聘网站邯郸封控最新消息
  • asp.net做网站源代码网站开发设计培训
  • 网站建设技术团队有多重要性海外网站免费建设
  • 塑模毕业设计代做网站软件开发模型比较
  • 苏州知名网站制作公司久久文化传媒有限公司招聘信息
  • 北流科技网站建设宜兴网站制作
  • 骨骼型的网站wordpress变成静态网页
  • 上海手机网站制作哪家好上海企业注销流程
  • 网站建设贰金手指下拉贰壹做购物网站能不能赚钱
  • 英涛祛斑 网站开发上海外贸公司是国企吗
  • php+mysql网站开发二次开发怎么弄
  • 青岛市城市建设局网站佛山建站公司模板
  • 系统网站有哪些wordpress 嵌入iframe
  • 无忧中英繁企业网站系统通用版网络营销战略规划
  • 网站建设定制公众号小程序大型电子商务网站建设
  • 下载学校网站模板做招聘网站公司
  • 如何用模板建网站wordpress溢价主题
  • 嘉定企业网站开发建设银行基金网站
  • 云服务器可以用来做网站么网站开发的好处
  • 美食分享网站建设策划书企业网站不被百度收录
  • 网站分享代码怎么加电子商务网站建站流程
  • 网站模板网站上海今天发生的重大新闻5条
  • 南乐网站开发大理建设招标有限公司网站
  • 外贸网站建设 东莞怎么做属于自己的领券网站
  • 网站推广排名做软件好还是做网站好
  • 源码网站php微信开放api
  • 网站子目录绑定二级域名建站系统主要包括
  • 做农村网站多少钱建网站那个好
  • 工程师网站建设网站开发代码说明书
  • 系统网站哪个好百度手机快速排名点击软件