Ленивая инициализация является тактикой задержки создания объекта, вычисления значения или некоторого другого дорогого процесса до первого раза, когда это необходимо.

Это обычно выполняется путем поддержания флага, указывающего, произошел ли процесс. Каждый раз, когда требуемый объект вызывается, флаг тестируется. Если это готово, это возвращается. В противном случае это инициализируется на месте.

В случае В спящем режиме, ленивая инициализация сделана в прокси (созданной вместо набора) использованием быть в спящем режиме сессии, из которой был получен объект. Если к набору получают доступ, когда исходный сеанс закрыт (например, снаружи a @Transactional объем), LazyInitializationException брошен.

Для инициализации набора достаточно звонить size() или выполните итерации через все элементы.