Какова цель интерфейса IsSerializable в GWT (относительно механизма RPC)

Какова цель интерфейса IsSerializable в GWT (относительно механизма RPC). Я никогда не мог найти хорошее объяснение относительно того, почему это - способ, которым это и почему Java по умолчанию сериализуемый интерфейс меток не работает.

22
задан benstpierre 17 June 2010 в 19:54
поделиться

2 ответа

Как Serializable , так и IsSerializable работают в соответствии с документами сериализации GWT :

Пользовательский класс сериализуем, если выполняются все следующие условия. :

  1. Его можно присвоить IsSerializable или Serializable, либо потому, что он напрямую реализует один из этих интерфейсов, либо потому, что он является производным от суперкласса, который выполняет
  2. Все неокончательные, непереходные поля экземпляра сами сериализуемы, и
  3. Начиная с GWT 1.5, он должен иметь конструктор по умолчанию (с нулевым аргументом) (с любым модификатором доступа) или вообще не иметь конструктора.

Одно ключевое отличие состоит в том, что по соображениям безопасности все классы Serializable должны быть включены в политику сериализации, которая создается во время компиляции, в то время как классы IsSerializable не имеют это требование.

Если вас интересует исключительно GWT, а вы не , например. разделяйте классы вашей модели между веб-приложением и другим приложением, я предлагаю вам реализовать классы модели / DTO IsSerializable .

25
ответ дан 29 November 2019 в 05:15
поделиться

Если вы делитесь своими объектами с другими программами, то используйте Serializable , так как это стандартная функция библиотеки java,

Но если вы хотите передавать его только между сервером и клиентом в GWT, то используйте IsSerializable. Это поможет вам убедиться, что вы не начнете передавать ее туда, куда она не должна передаваться.

6
ответ дан 29 November 2019 в 05:15
поделиться
Другие вопросы по тегам:

Похожие вопросы: