Сериализатор:
Код: Выделить всё
public class KafkaSerializer implements Serializer {
private ObjectMapper mapper;
@Override
public void close() {
}
@Override
public void configure(final Map settings, final boolean isKey) {
mapper = new ObjectMapper();
}
@Override
public byte[] serialize(final String topic, final T object) {
try {
return mapper.writeValueAsBytes(object);
} catch (final JsonProcessingException e) {
throw new IllegalArgumentException(e);
}
}
}
Десериализатор:
Код: Выделить всё
public class KafkaDeserializer implements Deserializer {
private ObjectMapper mapper;
@Override
public void close() {
}
@Override
public void configure(final Map settings, final boolean isKey) {
mapper = new ObjectMapper();
}
@Override
public T deserialize(final String topic, final byte[] bytes) {
try {
return mapper.readValue(bytes, new TypeReference() {
});
} catch (final IOException e) {
throw new IllegalArgumentException(e);
}
}
}
Подробнее здесь: https://stackoverflow.com/questions/435 ... ava-object
Мобильная версия