/ / Leniwy do chętnego za każdym razem, gdy Spring [zamknięty] - java, wiosna, hibernacja

Lazy to Eager za każdym razem ze Spring [closed] - java, spring, hibernate

Dlatego realizuję aplikację internetową Java EE(PrimeFaces, Spring, Hibernate) podczas rozwoju programowania odkryłem, że wszystkie powiązania między typem klasy Lazy nie zawsze działają („sesja typu błędu została zamknięta” ..)

Dlatego muszę za każdym razem pracować z każdym pobieraniem, aby wyeliminować ten błąd. Myślę, że moja praca nie jest dobra

powiedzieli mi, że wiosna nie pozwala na tryb Leniwy, a jeśli chcę pracować w sposób leniwy, należy dodać (listener lub filtr) do pliku web.xml. Czy to prawda?

Czy możesz dać mi przykład przy użyciu gorącego ładowania?

Odpowiedzi:

1 dla odpowiedzi № 1

Więc. Aby uzyskać „leniwe” dane w widoku, można dodać do specjalnego przechwytywacza kontekstu aplikacji:

<mvc:interceptors>
<bean
class="org.springframework.orm.hibernate4.support.OpenSessionInViewInterceptor">
<property name="sessionFactory" ref="sessionFactory" />
</bean>
</mvc:interceptors>

lub jeśli nie boisz się, możesz zmodyfikować entityManagerFactory dodając nową właściwość:

<property name="jpaProperties">
<props>
<prop key="hibernate.enable_lazy_load_no_trans">true</prop>
</props>
</property>

ale to nie jest zalecane, ponieważ jest wciąż pełne błędów