Синхронизировать два объекта с помощью JSON? - PullRequest
0 голосов
/ 10 октября 2011

У меня есть небольшое приложение, которое я написал, и оно общается с другим приложением через сервер Python, который может отправлять JSON по сети.

Что я действительно хотел бы сделать, так это иметь возможность иметьчтобы объекты «синхронизировались» друг с другом через json.Сейчас я уже заглянул в библиотеку gson, и, похоже, она отлично подходит для сериализации объекта в json.Тем не менее, это не кажется (или, может быть, я просто не могу понять это), чтобы быть очень полезным, если я просто хочу, чтобы два объекта обновлялись друг с другом.

Например:

Gson отлично справляется с задачей

Gson g = new Gson();
Object o = new Object();
String serialization = g.toJson(o, o.class);

Однако, допустим, у меня есть объект o на двух отдельных клиентах.Если на клиенте 1 они вызывают o.doSomeMethod (значение);

Я бы хотел, чтобы полученное изменение было обновлено до объекта o на компьютере клиента 2.Прямо сейчас я могу немного поработать и просто заменить объект новой сериализованной версией, но это не очень эффективный метод обновления двух объектов.

Спасибо за любую помощь заранее!

1 Ответ

0 голосов
/ 10 октября 2011

На вашем месте я бы сделал в вашем o.doSomeMethod вызов в сеть, который информирует client2 об изменении.На стороне клиента client2 есть метод прослушивания потенциальных обновлений.Когда приходит обновление, оно вносит изменения в объект на клиенте 2. Что вам нужно сделать, это реализовать какой-то протокол для отправки этих обновлений синхронизации.Например, допустим, у вас есть атрибут att1, а client1 вносит изменения в этот атрибут объекта o.Давайте также скажем, что объект o имеет своего рода уникальный идентификатор (id).Когда вы вызываете doSomeMethod, он отправляет в сети сообщение о том, что «Этот объект изменил значение для att1, вот новое значение».Имеет ли это смысл?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...