Spring web request interceptor that binds a JPA EntityManager to the
thread for the entire processing of the request. Intended for the "Open
EntityManager in View" pattern, i.e. to allow for lazy loading in
web views despite the original transactions already being completed.
This interceptor makes JPA EntityManagers available via the current thread,
which will be autodetected by transaction managers. It is suitable for service
layer transactions via
org.springframework.orm.jpa.JpaTransactionManager or
org.springframework.transaction.jta.JtaTransactionManager as well
as for non-transactional read-only execution.
In contrast to
OpenEntityManagerInViewFilter , this interceptor
is set up in a Spring application context and can thus take advantage of
bean wiring. It inherits common JPA configuration properties from
org.springframework.orm.jpa.JpaAccessor , to be configured in a
bean definition.
author: Juergen Hoeller since: 2.0 See Also: OpenEntityManagerInViewFilter See Also: org.springframework.orm.jpa.JpaInterceptor See Also: org.springframework.orm.jpa.JpaTransactionManager See Also: org.springframework.orm.jpa.JpaTemplate.execute See Also: org.springframework.orm.jpa.SharedEntityManagerCreator See Also: org.springframework.transaction.support.TransactionSynchronizationManager |