Я предполагаю, что под объектом вы имеете в виду не одно скалярное значение, а компонент.
Технически вы можете делать всевозможные причудливые вещи для обнаружения мутации bean-компонента, например, изменять байтовый код и добавлять код всякий раз, когда обновляется поле объекта.
Другой вариант - сохранить копию старого экземпляра компонента и сравнить его. На самом деле проблема сводится к сравнению двух bean-компонентов, о чем здесь спрашивали: как в общем случае сравнить целые java beans? Возможно, вы найдете больше, существует множество фреймворков, имеющих дело с bean-компонентами в целом.
Однако, поскольку вы вызываете веб-службы, у вас должен быть механизм для сериализации ваших объектов. Вы можете использовать сериализованную форму старого и нового объекта для сравнения на идентичность перед отправкой запроса на обновление.
Уведомление об изменении. Я не рекомендую прикреплять слушателей изменений к каждому компоненту. Это может изменить вашу общую производительность и вызвать утечки памяти. Также существует проблема транзакции: если обновляется более одного свойства bean-компонента, когда завершается обновление bean-компонента? Так что вам в любом случае нужен явный вызов после мутации.
Примечание для меня и других специалистов, занимающихся кешированием: На самом деле это вариант использования для предоставления такого метода, как Cache.putIfNotEquals (key, value), в кеше, что не требует больших усилий. В кеше уже хранится предыдущее значение, и он вызывает средство записи кеша (при настройке через запись) только в том случае, если значение изменилось.
person
cruftex
schedule
03.02.2016
ObservableValue
или любую изObservable
реализаций, исходящих от JavaFX. Уже в вашем JDK. - person Robin Jonsson   schedule 03.02.2016