The main advantage of this TransactionManagerLookup is that it avoids
double configuration of JTA specifics. A single TransactionManager bean can
be used for both JtaTransactionManager and LocalSessionFactoryBean, with no
JTA setup in Hibernate configuration.

Alternatively, use Hibernate's own TransactionManagerLookup implementations:
Spring's JtaTransactionManager only requires a TransactionManager for suspending
and resuming transactions, so you might not need to apply such special Spring
configuration at all.