Я хочу реализовать веб-службу REST с использованием Java & protobuf.REST Java веб-сервис с использованием protobuf
Может ли кто-нибудь указать мне, с чего начать или как его реализовать? Любой хороший учебник ???
Спасибо!
Я хочу реализовать веб-службу REST с использованием Java & protobuf.REST Java веб-сервис с использованием protobuf
Может ли кто-нибудь указать мне, с чего начать или как его реализовать? Любой хороший учебник ???
Спасибо!
Ниже две статьи показывает вам именно это
Для начала просто, вы можете написать простой сервлет и вернуть seralization ваших данных с Protobuf. Для REST я предпочитаю RESTeasy. Возможно, это помогает и дальше: Google protocol buffers and servlets
В сообщении вы можете увидеть, как мы можем создать веб-службу JX-RS, которая производит отклик в протоколе Google в ответ. Исходный код доступен at my blog
то, что я делаю, преобразует буферный объект протокола в массив байтов со стороны сервера и отправляет массив через службу: Сервисный код находится ниже, заполняя объект и помещая его в ответ.
UserDTO.User user = UserDTO.User.newBuilder(). //protocol buffer object
setSessionId(id).
setName("l070020").
build();
return Response.ok(user.toByteArray(),MediaType.APPLICATION_OCTET_STREAM).status(200).build();
Объект буфера протокола имеет возможность разбора и заполнения заполнить буферный объект протокола через поток. Так что я использую поток для обмена данными. На стороне клиента я делаю подключение к вебу-службе
HttpGet request = new HttpGet("http://localhost:8080/maven.work/service/mainServices/get_user");
request.addHeader("accept","application/octet-stream");
HttpResponse response = httpClient.execute(request);
буфер протокола имеет встроенный метод для анализа потока, ниже я разбор потока из ответа
User user = User.parseFrom(response.getEntity().getContent());
Аналогично вы можете отправить буфер протокола объект в виде массива байтов на сервер и сервер может получить его из потока запросов HTTP Servlet и проанализировать его так же, как это делает клиент.
Одинокая ссылка [считается плохим ответом] (http://stackoverflow.com/faq#deletion), поскольку она бессмысленна сама по себе, и целевой ресурс не гарантированно будет в будущем. [Было бы желательно] (http://meta.stackexchange.com/q/8259) включить здесь основные части ответа и предоставить ссылку для справки. – j0k
В дополнение к тому, что указано в j0k, пожалуйста, внимательно прочитайте [FAQ по Self-Promotion] (http://stackoverflow.com/faq#promotion). Также обратите внимание, что * требуется *, что вы публикуете отказ от ответственности каждый раз, когда вы ссылаетесь на свой собственный сайт/продукт. –
На приведенной выше ссылке я написал полное решение и код, но если вы, ребята, думаете, что почта не будет гарантирована, я останусь здесь, и поставлю ссылку для ссылки. Спасибо за руководство. Я новичок в stackoverflow. –