野子电竞数据官网改版https://www.xxe.io/全新登场
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.annotation.JSONField;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.List;
/**
- @API: 英雄赛事统计
- @Website: https://www.xxe.io/
*/
public class LolHero {
public static void main(String[] args) {
try {
String content = getContent();
Respond rsp = JSON.parseObject(content, Respond.class);
System.out.println(rsp.code);
System.out.println(rsp.message);
rsp.getData().forEach(System.out::println);
} catch (Throwable t) {
t.printStackTrace();
}
}
/**
* 获取API返回内容
* <p>
* Note: 这里为了方便测试我使用了一份本地文件,使用时应替换为真实接口返回内容
*/
private static String getContent() {
try {
StringBuilder builder = new StringBuilder();
List<String> lines = Files.readAllLines(Paths.get("./src/main/resources/LolHero.json"), StandardCharsets.UTF_8);
lines.forEach(builder::append);
return builder.toString();
} catch (Throwable t) {
t.printStackTrace();
return "";
}
}
public static class Respond {
@JSONField
private int code;
@JSONField
private String message;
@JSONField
private List<Hero> data;
public int getCode() {
return code;
}
public void setCode(int code) {
this.code = code;
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
public List<Hero> getData() {
return data;
}
public void setData(List<Hero> data) {
this.data = data;
}
}
public static class Hero {
@JSONField
private int heroId;
@JSONField
private int leagueId;
@JSONField
private double kda;
@JSONField
private double killAverage;
@JSONField
private double deathAverage;
@JSONField
private double assistAverage;
@JSONField
private String position;
@JSONField
private double pickRate;
@JSONField
private double banRate;
@JSONField
private double winRate;
@Override
public String toString() {
return "Hero{" +
"heroId=" + heroId +
", leagueId=" + leagueId +
", kda=" + kda +
", killAverage=" + killAverage +
", deathAverage=" + deathAverage +
", assistAverage=" + assistAverage +
", position='" + position + '\'' +
", pickRate=" + pickRate +
", banRate=" + banRate +
", winRate=" + winRate +
'}';
}
public void setHeroId(int heroId) {
this.heroId = heroId;
}
public void setLeagueId(int leagueId) {
this.leagueId = leagueId;
}
public void setKda(double kda) {
this.kda = kda;
}
public void setKillAverage(double killAverage) {
this.killAverage = killAverage;
}
public void setDeathAverage(double deathAverage) {
this.deathAverage = deathAverage;
}
public void setAssistAverage(double assistAverage) {
this.assistAverage = assistAverage;
}
public void setPosition(String position) {
this.position = position;
}
public void setPickRate(double pickRate) {
this.pickRate = pickRate;
}
public void setBanRate(double banRate) {
this.banRate = banRate;
}
public void setWinRate(double winRate) {
this.winRate = winRate;
}
}
}