Hibernate EntityInterceptor (EmptyInterceptor): отфильтровать все транзакции @Transaction (readOnly = TRUE) - PullRequest
0 голосов
/ 14 ноября 2018

Я определил и успешно подключил перехватчик Hibernate DB, который перехватывает все транзакции.

public class HibernateTransactionInterceptor extends EmptyInterceptor {

    @Override
    public void afterTransactionBegin(Transaction tx) {

        System.out.println("Intercepted"); 
        // ...
        super.afterTransactionBegin(tx);        
    }
}

applicationContext.xml:

<bean id="transactionInterceptor" class="myapp.interceptor.HibernateTransactionInterceptor" />

<bean id="sessionFactory"
        class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">
  <!-- Plug into SessionFactory the Interceptor bean define above -->
  <property name="entityInterceptor" ref="transactionInterceptor" />

  ...
</bean>

Теперь перехватчик запускает все @Transaction методы обслуживания. Но мне нужно только перехватить @Transaction(readOnly=FALSE) методы (т.е. отфильтровать все методы только для чтения). Есть ли способ настроить это?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...