Я хочу десериализовать JSON в общий класс (например, Foo), используя Object Mapper Джексона. Во-первых, я использую это:
JavaType type = mapper.getTypeFactory().constructParametricType(valueType, valueInnerType);
Foo<Bar> response = mapper.readValue(inStream, type);
Когда все набрано, все хорошо! Но я хочу обобщить метод десериализации этих объектов. Например, с помощью того же метода я хочу десериализовать объект класса Foo2 и объект класса Foo, все с одним и тем же методом.
Я мог бы сделать два общих метода:
public <T> T deserialize(Stream inStream, Class<T> classLiteral);
public <T, TInner> ??? deserialize(Stream inStream, Class<T> classLiteral, Class<TInner> innerClassLiteral);
Но я не знаю, какого типа, я должен вернуться.
Это правильный путь? Или есть лучший способ сделать это?