Я перебираю Java POJO (выбирая данные из базы данных), а затем использую библиотеку protostuff, чтобы преобразовать его в byte [], и снова кодирую его в классы ProtoBuff, чтобы я мог отправить его как приложение типа контента → приложение/ x-protobuf
Моя самая большая проблема в следующей строке, где мне нужно кодировать для каждой строки:
for (InstrumentHistory instrumentHistory : instrumentHistoryRepository.getAllInstrumentHistorys()) {
Schema<InstrumentHistory> schema = RuntimeSchema.getSchema(InstrumentHistory.class);
LinkedBuffer buffer = LinkedBuffer.allocate(LinkedBuffer.DEFAULT_BUFFER_SIZE);
final byte[] protostuff;
try {
protostuff = ProtostuffIOUtil.toByteArray(instrumentHistory, schema, buffer);
instrumentHistoryProtos.add(InstrumentHistoryProto.InstrumentHistory.parseFrom(protostuff));
} finally {
buffer.clear();
}
}
return InstrumentHistoryProto.InstrumentHistorys.newBuilder().addAllInstrumentHistory(instrumentHistoryProtos).build();
Есть ли какой-нибудь обходной путь или простой способ сделать это?