Wrap A Callable и Runnable с весенней транзакцией - PullRequest
0 голосов
/ 21 января 2020

У меня есть пользовательские анонимные классы Callable и Runnable, и мне нужно обеспечить выполнение транзакций вокруг ВСЕГО вызова Callable и Runnable.

Я использую Spring JPA 2.0 и Spring Framework 5. Есть ли Programmati c способ окружить поведение @Transaction для анонимных классов Callable и Runnable?

@Transaction
public V call() throw Exception{
    this.mymethod();// NOTE THIS IS NOT SURROUNDDED BY TXN
    dao.method()

}

@Transaction
public void run(){
   this.mymethod()// NOTE THIS IS NOT SURROUNDDED BY TXN
   dao.method()

} 
@Transaction
public void run(){
   this.mymethod1()// NOTE THIS IS NOT SURROUNDED BY TXN because of this
   this.mymethod2() // NOTE THIS IS NOT SURROUNDED BY TXN  because of this

} 

Установка @Transaction не работает. Не могли бы вы помочь, как обернуть программно Callable и Runnable?

Spring JPA: 2.2.3.RELEASE Spring 5.2.2.RELEASE Spring Boot: 2.2.2.RELEASE

Любой указатель будет очень Будьте благодарны.

Позвольте мне уточнить некоторые моменты:

Я хотел

CallableTXNDecorator<V> 
public V call() throw Exception{
{
   start TXN
    try{
    targetcallable.call();
     commmit()
    }catch(Exception e){
      rollback()
    }
}

Так что я хотел написать Wrapper, который делает это.

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