概述:零基础,由简单开始,先自己写一个简单的接口,页面能请求到数据。然后自己用java在后端发起http请求调用自己写的接口(地址),打印出数据。包管理工具用的Gradle,不是Maven。
1.新建项目,如图所示
2.新建好项目开始写代码:
2.1 新建SpecbaseObject类,用来set数据。
package com.zdwp.getdataapi.controller;
public class SpecbaseObject {
private Integer resultCode;
private String resultMessage;
public Integer getResultCode() {
return resultCode;
}
public void setResultCode(Integer resultCode) {
this.resultCode = resultCode;
}
public String getResultMessage() {
return resultMessage;
}
public void setResultMessage(String resultMessage) {
this.resultMessage = resultMessage;
}
@Override
public String toString() {
return "SpecbaseObject{" +
"resultCode=" + resultCode +
", resultMessage='" + resultMessage + ''' +
'}';
}
}
2.2 写个超级简单的接口
package com.zdwp.getdataapi.controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@RequestMapping("/testWeb")
public class TestController {
@GetMapping(value = "/testData")
public String testData() {
SpecbaseObject specbaseObject = new SpecbaseObject();
specbaseObject.setResultCode(3);
specbaseObject.setResultMessage("test success!");
return specbaseObject.toString();
}
}
代码写好运行访问:接口没问题。但是,可以看到页面返回的是String字符串(我们代码把对象转成String了),key=value这种形式。联想到网页上传输数据是json格式为主,那就是key:value 的json 字符串,这样前端拿到后再转成json对象,就能通过value.属性(value.name)这种方式方便获取数据,而不是通过String字符串去切割获取。
思路:写一个JsonUtil工具类,用到Gson类中gson.toJson方法把specbaseObject 转成 json格式的字符串。
需要的包 com.google.code.gson。
在Gradle管理中,配置包是在build.gradle文件中。
然后看这里:点击gradle管理,点击刷新,然后就可以导包了。
2.3 JsonUtil类代码:
package com.zdwp.getdataapi.controller;
import com.google.gson.Gson;
import com.google.gson.JsonNull;
public class JsonUtil {
private static Gson gson=new Gson();
public static String toJson(Object src) {
if (src == null) {
return gson.toJson(JsonNull.INSTANCE);
}
return gson.toJson(src);
}
}
2.4 上面的接口代码也修改下,调用JsonUtil
package com.zdwp.getdataapi.controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@RequestMapping("/testWeb")
public class TestController {
@GetMapping(value = "/testData")
public String testData() {
SpecbaseObject specbaseObject = new SpecbaseObject();
specbaseObject.setResultCode(3);
specbaseObject.setResultMessage("test success!");
String reStr = JsonUtil.toJson(specbaseObject);
return reStr;
}
}
查看请求结果:
搞定。Json格式的String字符串。
3.未完



