В настоящее время у меня есть этот код, который я пытаюсь реорганизовать, чтобы учесть больше возможных типов классов (упрощенный с помощью фиктивного кода, но суть та же):
private String serializeSomething(final SomeSpecificClass something) {
try {
return mapper.writeValueAsString(someething);
} catch (final IOException e) {
throw new SomeCustomException("blah", e);
}
}
private SomeSpecificClass deserializeSomething(final String payload) {
try {
return mapper.readValue(payload, SomeSpecificClass.class);
} catch (final IOException e) {
// do special things here
throw new SomeCustomException("blah", e);
}
}
Недавно мы обнаружили, чтонам, вероятно, придется принять другие типы здесь, а не только SomeSpecificClass
.Есть ли лучший способ сделать это без необходимости менять все на Object
вместо SomeSpecificClass
?Чтобы мы могли вернуть правильный тип в deserializeSomething
(и не нужно приводить его после получения возвращаемого значения от вызывающей стороны)?