Какой класс / метод в Kafka Streams мы можем использовать для сериализации / десериализации Java-объекта в байтовый массив ИЛИ наоборот? Следующая ссылка предлагает использовать ByteArrayOutputStream & ObjectOutputStream, но они не являются поточно-ориентированными.
Отправка пользовательских объектов Java в тему Kafka
Существует еще один вариант использования ObjectMapper, ObjectReader (для поточно-ориентированного), но он конвертируется из POJO -> JSON -> bytearray. Кажется, этот вариант является обширным. Хотел проверить, есть ли прямой способ перевести объект в bytearray и наоборот, который является потокобезопасным. Пожалуйста, предложите
import org.apache.kafka.common.serialization.Serializer;
public class HouseSerializer<T> implements Serializer<T>{
private Class<T> tClass;
public HouseSerializer(){
}
@SuppressWarnings("unchecked")
@Override
public void configure(Map configs, boolean isKey) {
tClass = (Class<T>) configs.get("POJOClass");
}
@Override
public void close() {
}
@Override
public byte[] serialize(String topic, T data) {
//Object serialization to be performed here
return null;
}
}
Примечание: версия Kafka - 0.10.1