19 Kasım 2018 Pazartesi

SpringData DefaultTransactionDefinition Sınıfı

constructor
Anotasyon ile çalışan kodun aynısını elle yapmaya yarar. Elimizde şöyle bir kod olsun.
@Transactional(propagation = Propagation.REQUIRED)
class ClassB {

  void method1() {
    //doing save operation
  }
}
Şöyle yaparız.
void myMethod() {
  TransactionStatus status = null;
  DefaultTransactionDefinition def =
    new DefaultTransactionDefinition(TransactionDefinition.PROPAGATION_REQUIRES_NEW);
  def.setTimeout(contentFileProcessingConfigBean.getFileCopyTransactionTimeout());
  status = transactionManager.getTransaction(def);

  b.method1();

  if (status != null) {
    transactionManager.commit(status);
  }
}

Hiç yorum yok:

Yorum Gönder