Есть API криптобиржи Yobit "https://yobit.net/api/3/info" Не могу понять именно момент "pairs":{"ltc_btc":{"..."}} на месте "ltc_btc" каждый раз новая валютная пара jsonschema2pojo предлагает для каждой валютной пары создавать отдельный POJO, а их там OVER много. Как это описать подтолкните пожалуйста
Заранее спасибо
Dmitrii
2,6933 золотых знака12 серебряных знаков21 бронзовый знак
задан 17 февр. 2020 в 11:54
Android Junior
1151 серебряный знак9 бронзовых знаков
1 ответ 1
Вариант для не ленивых
- Копируете содержимое json
- Идете на ресурсы, позволяющие груду json текста представить в удобочитаемом варианте. Например, тут
- Видим структуру json, и пытаемся основываясь на том, что видим, собрать pojo
Вариант для ленивых
- Берем пункт No1 из варианта для ленивых
- Опять же, идете на ресурсы, позволяющие груду json текста представить не только в удобочитаемом варианте, но и еще собрать за вас pojo на удобном ЯП, например, здесь
- Вставляем json вывод и получаем готовый класс
Ваш класс из варианта для ленивых:
public class Lazy {
private long serverTime;
private Map<String, Pair> pairs;
@JsonProperty("server_time")
public long getServerTime() { return serverTime; }
@JsonProperty("server_time")
public void setServerTime(long value) { this.serverTime = value; }
@JsonProperty("pairs")
public Map<String, Pair> getPairs() { return pairs; }
@JsonProperty("pairs")
public void setPairs(Map<String, Pair> value) { this.pairs = value; }
}
// Pair.java
import java.util.*;
import com.fasterxml.jackson.annotation.*;
public class Pair {
private long decimalPlaces;
private double minPrice;
private long maxPrice;
private double minAmount;
private double minTotal;
private long hidden;
private double fee;
private double feeBuyer;
private double feeSeller;
@JsonProperty("decimal_places")
public long getDecimalPlaces() { return decimalPlaces; }
@JsonProperty("decimal_places")
public void setDecimalPlaces(long value) { this.decimalPlaces = value; }
@JsonProperty("min_price")
public double getMinPrice() { return minPrice; }
@JsonProperty("min_price")
public void setMinPrice(double value) { this.minPrice = value; }
@JsonProperty("max_price")
public long getMaxPrice() { return maxPrice; }
@JsonProperty("max_price")
public void setMaxPrice(long value) { this.maxPrice = value; }
@JsonProperty("min_amount")
public double getMinAmount() { return minAmount; }
@JsonProperty("min_amount")
public void setMinAmount(double value) { this.minAmount = value; }
@JsonProperty("min_total")
public double getMinTotal() { return minTotal; }
@JsonProperty("min_total")
public void setMinTotal(double value) { this.minTotal = value; }
@JsonProperty("hidden")
public long getHidden() { return hidden; }
@JsonProperty("hidden")
public void setHidden(long value) { this.hidden = value; }
@JsonProperty("fee")
public double getFee() { return fee; }
@JsonProperty("fee")
public void setFee(double value) { this.fee = value; }
@JsonProperty("fee_buyer")
public double getFeeBuyer() { return feeBuyer; }
@JsonProperty("fee_buyer")
public void setFeeBuyer(double value) { this.feeBuyer = value; }
@JsonProperty("fee_seller")
public double getFeeSeller() { return feeSeller; }
@JsonProperty("fee_seller")
public void setFeeSeller(double value) { this.feeSeller = value; }
}
ответ дан 17 февр. 2020 в 12:17
Dmitrii
2,6933 золотых знака12 серебряных знаков21 бронзовый знак
Начните задавать вопросы и получать на них ответы
Найдите ответ на свой вопрос, задав его.
Задать вопросlang-java