anchor.diff:  ----
   
   You can also access a JNDI-located `SessionFactory`, using Spring's
  -`JndiObjectFactoryBean` / `<jee:jndi-lookup>` to retrieve and expose it. However, that
  -is typically not common outside of an EJB context.
  +`JndiObjectFactoryBean` / `<jee:jndi-lookup>` to retrieve and expose it.
  +However, that is typically not common outside of an EJB context.
  +
  +[NOTE]
  +====
  +Spring also provides a `LocalSessionFactoryBuilder` variant, seamlessly integrating
  +with `@Bean` style configuration and programmatic setup (no `FactoryBean` involved).
  +
  +Both `LocalSessionFactoryBean` and `LocalSessionFactoryBuilder` support background
  +bootstrapping, with Hibernate initialization running in parallel to the application
  +bootstrap thread on a given bootstrap executor (e.g. a `SimpleAsyncTaskExecutor`).
  +On `LocalSessionFactoryBean`, this is available through the "bootstrapExecutor"
  +property; on the programmatic `LocalSessionFactoryBuilder`, there is an overloaded
  +`buildSessionFactory` method which takes a bootstrap executor argument.
  +
  +As of Spring Framework 5.1, such a native Hibernate setup can also expose a JPA
  +`EntityManagerFactory` for standard JPA interaction next to native Hibernate access.
  +See <<orm-jpa-hibernate,Native Hibernate setup for JPA>> for details.
  +====
   
   
   [[orm-hibernate-straight]]
  
positive.code: native Hibernate setup can also be expressed through `LocalSessionFactoryBuilder`,
  seamlessly integrating with `@Bean` style configuration (no `FactoryBean` involved).
  
  
  
  
  
negative.code: implementations because the JPA transformers are applied only at class loader level and
  thus are isolated from each other.
  
  [[orm-jpa-setup-multiple]]
  ===== Dealing with multiple persistence units
  
  For applications that rely on multiple persistence units locations, stored in various
  