Какова самая простая структура для передачи POJO между Java-программами? - PullRequest
5 голосов
/ 04 мая 2011

Мне нужна среда для передачи POJO между двумя (или более в модели клиент / сервер) Java-программами по TCP / IP. Мне нужно, чтобы он был максимально простым, но он должен поддерживать несколько клиентов на сервер, и простота внедрения шифрования - это плюс.

До сих пор я рассматривал Java RMI, JRemoting, AltRMI и NinjaRMI. Прямо сейчас JRemoting выглядит лучшим выбором, поскольку он прост и не требует странных и, казалось бы, ненужных расширений и реализаций, как это делают большинство других. Похоже, что ни на одном из них не ведутся активные разработки, кроме как на Java RMI. Я не знаю, потому ли это, что они стабильны и не нуждаются в доработке, или потому, что такого рода фреймворки просто больше не «крутые».

POJO - это просто сумки свойств. Мне нужен сервер для хранения статического списка объектов, и клиенты должны быть в состоянии (1) прочитать список, (2) добавить объект в список и (3) удалить объект из списка.

Есть предложения?

Ответы [ 4 ]

3 голосов
/ 04 мая 2011

Возможно, вы могли бы использовать любую технологию сериализации, например, вы могли бы использовать JSON и добавить шифрование и сжатие позже, чтобы сократить объем передаваемого трафика.Преимущество JSON заключается в том, что он не зависит от языка, поэтому вы не ограничиваете реализацию обеих сторон соединения.

Доступно много библиотек JSON;см json.org .

2 голосов
/ 10 мая 2011

Вы можете посмотреть Протокол буфера . Я думаю, что Google использует внутренние буферы протокола.

2 голосов
/ 04 мая 2011

смотрите здесь: http://code.google.com/p/google-gson/

2 голосов
/ 04 мая 2011

Вам нужно делать удаленные вызовы методов, или ваши POJO просто мешки свойств? Если последнее, то, вероятно, будет проще всего использовать обычную сериализацию Java.

...