GWT RequestFactory ValueProxy Отношения - PullRequest
0 голосов
/ 18 ноября 2011

Допустим, у меня есть база данных с типами A и B. A - это EntityProxy, который содержит список B, а B - это ValueProxy. Я использую RequestFactory GWT для запроса A по идентификатору. Когда я запрашиваю A, используя RequestFactory, я могу получить доступ к списку B, например, так: A.getB(), поскольку B является ValueProxy.

Вопрос: действительно ли список B запрашивается и загружается клиенту в тот момент, когда я запрашиваю A, или только когда я звоню getB()?

1 Ответ

2 голосов
/ 18 ноября 2011

Там нет ленивой загрузки: вы спрашиваете «A с Bs», вы получаете «A с Bs», если вы спрашиваете только A (потому что вы не используете .with("b") на вашем Request), вы Вы получите только A, и вам нужно будет попросить Bs позже.

См. Это принцип наименьшего удивления .

Обратите внимание, что получение Bs из вашей базы данных (вы пометили вопрос Hibernate, JPA и ORM, так что ...) - это отдельная история. Это зависит от того, как вы управляете сеансом EntityManager и жизненным циклом сущностей JPA. Вполне возможно, что B загружаются из базы данных, даже если они не отправляются клиенту.

...