使用 jackson 解析 json 演示样例「建议收藏」

使用 jackson 解析 json 演示样例

大家好,又见面了,我是全栈君。


首先须要下载3个包,下载地址在Github FasterXML,这三个核心模块各自是:
Streaming (“jackson-core“) defines low-level streaming API, and includes JSON-specific implementations
Annotations (“jackson-annotations“) contains standard Jackson annotations
Databind (“jackson-databind“) implements data-binding (and object serialization) support on streaming package;
                                         it depends both on streaming and annotations packages。


json文件:
<span style="font-family:SimHei;font-size:18px;">{
     "name":" vonzhou",
     "age":123,
     "isMan":true
}</span>

POJO类:
<span style="font-family:SimHei;font-size:18px;">package jackson.test;

import java.util.HashMap;
import java.util.Map;

import com.fasterxml.jackson.annotation.JsonProperty;

public class ExamplePOJO {
      @JsonProperty( "name")
      private String name;
     
      @JsonProperty( "age")
      private Integer age;
     
      @JsonProperty( "isMan")
      private Boolean isMan;
     
      private Map<String,Object> additionalProperties = new
                HashMap<String, Object>();
     
      @JsonProperty( "name")
      public String getName() {
            return name;
     }
      @JsonProperty( "name")
      public void setName(String name) {
            this. name = name;
     }
      @JsonProperty( "age")
      public Integer getAge() {
            return age;
     }
      @JsonProperty( "age")
      public void setAge(Integer age) {
            this. age = age;
     }
      @JsonProperty( "isMan")
      public Boolean getIsMan() {
            return isMan;
     }
      @JsonProperty( "isMan")
      public void setIsMan(Boolean isMan) {
            this. isMan = isMan;
     }

      public Map<String, Object> getAdditionalProperties() {
            return additionalProperties;
     }

      public void setAdditionalProperties(String name, Object obj) {
            this. additionalProperties.put(name, obj);
     }
     
      @Override
      public String toString() {
            return "ExamplePOJO{\n" +
                      "name :'" + name + "',\n" +
                      "age : " + age + ",\n" +
                      "isMan :" + isMan + ",\n" +
                      "additionalProperties : " + additionalProperties +
                      "\n}";
     }
     

}

</span>

解析json文件的类:
<span style="font-family:SimHei;font-size:18px;">package jackson.test;import java.io.File;import java.io.IOException;import com.fasterxml.jackson.core.JsonParseException;import com.fasterxml.jackson.databind.JsonMappingException;import com.fasterxml.jackson.databind.ObjectMapper;public class Driver {     public static void main(String[] args) {          ObjectMapper mapper = new ObjectMapper();          try {               ExamplePOJO bean = mapper.readValue(new File("test.json"),                                                                  ExamplePOJO.class);               System.out.println("name : " + bean.getName());               System.out.println("age : " + bean.getAge() );               System.out.println("isMan : " + bean.getIsMan() );               System.out.println("===================");               System.out.println(bean.toString());          } catch (JsonParseException e) {               e.printStackTrace();          }catch (JsonMappingException e){               e.printStackTrace();          }catch (IOException e){               e.printStackTrace();          }                  }}</span>




版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/115208.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 11.1JS笔记_数据结构手写笔记

    11.1JS笔记_数据结构手写笔记11.1JS笔记

  • C语言背包问题

    C语言背包问题0/1背包问题一个旅行者有一个最多能装MM公斤的背包,现在有nn件物品,它们的重量分别是W1,W2,…,WnW1,W2,…,Wn,它们的价值分别为C1,C2,…,CnC1,C2,…,Cn,求旅行者能获得最大总价值。【输入】第一行:两个整数,MM(背包容量,M<=200M<=200)和NN(物品数量,N<=30N<=30);第2..N+12..N+1行:每行二个整数Wi,CiWi,Ci,表示每个物品的重量和价值。【输出】仅一行…

  • PHP 面试踩过的坑

    PHP 面试踩过的坑

  • 惠普m154a状态页_惠普m154a感叹号闪烁[通俗易懂]

    惠普m154a状态页_惠普m154a感叹号闪烁[通俗易懂]大家好,我是时间财富网智能客服时间君,上述问题将由我为大家进行解答。惠普m154a感叹号闪烁的解决方法如下:1、打开电脑管家,点击“工具箱”。2、在工具箱里找到“硬件检测”。3、在硬件检测里点击“驱动安装”。4、可以看到“安装状态”,如果是未安装可以直接点击安装。惠普公司(Hewlett-PackardDevelopmentCompany,L.P,简称HP)总部位于美国加利福尼亚州的帕罗奥多…

  • USES_CONVERSION宏定义

    USES_CONVERSION宏定义USES_CONVERSION是用来转换类型的(比如T2A等转换需用此宏),比如我们很常见的问题:在Socket编程时候,我们的IP地址从界面上输进去一般都使用CString类型的,可是在SOCKADDR_IN中的inet_addr却是const char *我们就不能直接用CString来用。我们就可以使用T2A()宏了。 SOCKADDR_IN localaddr; …

  • python保留小数位数_python小数点保留三位

    python保留小数位数_python小数点保留三位https://www.luogu.org/problemnew/show/P14221.round()内置方法a=int(input())sum=0if(a>=401):sum+=(a-400)*0.5663a=400if(a>=151):sum+=(a-150)*0.4663a=150sum+=a*0.4…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号