Реализация Сериализуемый в объекте значения? - PullRequest
0 голосов
/ 24 января 2011

Во-первых, немного фона на VO здесь. VO s - это объект модели, созданный на уровне переднего плана для передачи значения, возвращаемого с уровня обслуживания.

Пример фиктивного кода ниже:

UserResponseTypeFromService user = userAccountService.getUser(...);
UserVO userVO = ServiceResponseHelper.getUserVOFromServiceResponse(user);

Тогда передний код будет использовать только userVO вместо user объекта.

У меня вопрос к UserVO классу, должен ли я реализовать Serializable? Мы должны всегда считать потокобезопасным в этой ситуации?

Заранее спасибо.

Ответы [ 2 ]

0 голосов
/ 24 января 2011

Если вы хотите хранить VO в сеансе и / или хотите передавать их по проводам (DTO?), Вам следует реализовать Serializable.

VO просто держатели данных и, как правило, неизменяемые. Если вы следуете этому принципу, то безопасность потоков - это данность (поскольку они неизменны). В противном случае вы должны учитывать безопасность потоков, если храните их в сеансе.

0 голосов
/ 24 января 2011

Ваша формулировка проблемы кажется несколько абстрактной / неясной, но все же я постараюсь ответить на ваш запрос в меру моего понимания.

Относительно сериализуемого;убедитесь, что класс реализует Serializable, если объект этого класса должен быть сохранен или отправлен по сети.Если ваш объект не соответствует требованию, то для его реализации в Serializable нет необходимости (если, конечно, вы не планируете что-то делать с полем serialVersionUID).

Относительно безопасности потока;Вы можете уточнить контекст здесь?

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