2
Я написал этот метод:как передать `Класс <T>` `` Список <MyDevice> `?
public <T> T jsonToObject(String json, Class<T> klazz) {
ObjectMapper mapper = new ObjectMapper();
T object = null;
try {
object = mapper.readValue(json, klazz);
} catch (IOException e) {
e.printStackTrace();
}
return object;
}
Я хочу назвать его:
List<Device> devicesList= jsonUtils.jsonToObject(response.getEntityInputStream(), new TypeLiteral<List<Device>.class);
, что это правильный способ передать Class<T>
из List<Device>
?
, но тогда, как я буду называть 'mapper.readValue (JSON, klazz)'? –
Что такое картограф? Это экземпляр Jackson ObjectMapper? Если так, не используйте TypeLiteral, а TypeReference от Jackson, который выполняет ту же цель и работает одинаково. http://fasterxml.github.io/jackson-databind/javadoc/2.7/com/fasterxml/jackson/databind/ObjectMapper.html#readValue%28byte[],%20com.fasterxml.jackson.core.type.TypeReference%29 –