取得远端相应Json并转化为Java对象一

 JDK:1.8.0_212

IDE:STS4(Spring Tool Suit4 Version: 4.3.2.RELEASE)

工程下载:https://files.cnblogs.com/files/xiandedanteng/testEmp20190929.rar

 

用SpringBoot做了一堆Restful Service,这回启动一个Maven工程取得结果看看。

还是用STS4新建一个Maven工程,修改pom.xml如下:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <groupId>com</groupId>
  <artifactId>testEmp</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>jar</packaging>

  <name>testEmp</name>
  <url>http://maven.apache.org</url>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>

  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
    
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-web</artifactId>
      <version>5.0.4.RELEASE</version>
      <scope>compile</scope>
    </dependency>

      <dependency> 
          <groupId>net.sf.json-lib</groupId>
          <artifactId>json-lib</artifactId>
          <version>2.4</version>
          <classifier>jdk15</classifier>
          </dependency>
          
      </dependencies>
</project>

以上红色部分使用RestTemplate的依赖,蓝色部分是解析JSON的依赖。

下面就可以直接写代码了:

先把实体类代码准备好:

package com.testEmp;

public class Emp {
    private Long id;
    private String name;
    
    public String toString() {
        return "Emp id:"+id+" name:"+name;
    }

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
}

然后就是调用网络上的Restful服务,并传Emp对象

package com.testEmp;

import org.springframework.web.client.RestTemplate;

import net.sf.json.JSONObject;

public class Test {
    public static void main(String[] args) throws Exception{
        // 从远端取得相应
        RestTemplate rt=new RestTemplate();
        String result = rt.getForObject("http://localhost:8080/emp/1",String.class);
        System.out.println(result);
        
        // 将Json字符串转Java对象
        JSONObject jsonObject=JSONObject.fromObject(result);
        Emp stu=(Emp)JSONObject.toBean(jsonObject, Emp.class);
        System.out.println(stu);
    }
}

执行后输出如下:

{"id":1,"name":"孟郊andy"}
Emp id:1 name:孟郊andy

从结果看简单对象是转化成了,带有对象嵌套的请看。。 

 

--END-- 2019年9月29日11:45:06

转载于:https://www.cnblogs.com/xiandedanteng/p/11606964.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值