使用 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>




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

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

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 并发编程之深入理解Condition

    并发编程之深入理解Condition

    2021年8月3日
    75
  • HttpClient4 获取cookie

    HttpClient4 获取cookieHttpClient4.x可以自带维持会话功能,只要使用同一个HttpClient且未关闭连接,则可以使用相同会话来访问其他要求登录验证的服务(见TestLogin()方法中的“执行get请求”部分)。如果需要使用HttpClient池,并且想要做到一次登录的会话供多个HttpClient连接使用,就需要自己保存会话信息。因为客户端的会话信息是保存在cookie中的(JSESSIONID),所以

    2022年7月22日
    7
  • MBus总线的基础学习

    MBus总线的基础学习MBus总线是一种主从式半双工传输总线,采用主叫/应答的方式通信,即只有处于中心地位的主站(Master)发出询问后,从站(Slave)才能向主站传输数据。MBus的主要特点如下:1、两线制总线,不分正负极性,施工简单;2、采用独特的电平特征传输数字信号,抗干扰能力强,传输距离长;3、可以选着总线供电,降低维护成本;4、总线型拓扑结构,扩展方便,组网成本低;5、任一

    2022年10月16日
    1
  • python简单的图片加密「建议收藏」

    python简单的图片加密「建议收藏」欢迎加入我们卧虎藏龙的python讨论qq群:729683466●导语●总有些东西是你不希望别人看到的比如你暗恋的女神的照片要是被别人发现了那可就尴尬了所以来学一学用python加密图…

    2022年6月21日
    82
  • Android 加密 AES

    Android 加密 AESAES加密又称对称性加密,在开发中常用于对流数据对加密,尤其是流数据在网络传输过程中,担心被泄露,AES加密被常用于这块的校验中。下面是AES加密的百度百科说明解释:AES加密标准又称为高级加密标准Rijndael加密法,是美国国家标准技术研究所NIST旨在取代DES的21世纪的加密标准。AES的基本要求是,采用对称分组密码体制,密钥长度可以为128、192或256…

    2022年5月16日
    31
  • egg-swagger token验证无效解决方案

    egg-swagger token验证无效解决方案先看效果注意,我这边只讲重点1、首先,egg-swagger怎么安装看我的这篇egg-swaggerdemo无数据库版2、无swagger的token验证我的这篇eggjstoken生成和验证demo3、我这边只讲,重点4、我下的是egg-swagger-doc依赖5、你发现你路由/listjwt可以验证,而swagger-ui的/api/user/list却不能验证正文你配置完swagger-ui之后要配置几个东西第一:你…

    2022年9月4日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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