23 Ağustos 2023 Çarşamba

Docker ve Artemis

Örnek
Şöyle yaparız
docker run --rm \ -e AMQ_EXTRA_ARGS="--http-host 0.0.0.0 --relax-jolokia" \ -e AMQ_USER=admin \ -e AMQ_PASSWORD=admin \ -p 61616:61616 \ -p 8161:8161 \ --name artemis \
quay.io/artemiscloud/activemq-artemis-broker
Bağlanmak için şöyle yaparız. Kullanıcı adı ve şifre yukarıda belirtiliyor

15 Ağustos 2023 Salı

Docker ve ActiveMQ

Örnek
Şöyle yaparız
> docker run -d --name activemq -p 61616:61616 -p 8161:8161 webcenter/activemq
Daha sonra şu adrese gideriz
Kullanıcı adı : admin Şifre : admin

2 Ağustos 2023 Çarşamba

Java Transaction API - JTA - Distributed Transaction İçindir

Giriş
Açıklaması şöyle
The Java Transaction API (JTA) is one of the APIs defined in the Java Enterprise Edition (Java EE) platform, specifically providing a framework for handling distributed transactions in a consistent and reliable manner.
Açıklaması şöyle
The Java Transaction API consists of three key elements:

UserTransaction interface: This provides the application with the ability to control transaction boundaries programmatically.
TransactionManager interface: It offers more advanced features, like suspending, resuming transactions, and is typically used by the container rather than by the application.
XAResource interface: This is the bridge between the resource manager (like a database) and the transaction manager. It includes methods for associating a resource with a transaction and for transaction completion.
UserTransaction yazısına bakabilirsiniz

JTA UserTransaction Arayüzü

Giriş
Eski kodlarda şu satırı dahil ederiz.
import javax.transaction.UserTransaction;
Şu satırı dahil ederiz
import jakarta.transaction.UserTransaction;
Açıklaması şöyle
UserTransaction interface: This provides the application with the ability to control transaction boundaries programmatically.
Maven
API için şu satırı dahil deriz
<dependency>
  <groupId>javax.transaction</groupId>
  <artifactId>javax.transaction-api</artifactId>
  <version>1.3</version>
</dependency>

Örnek
Şöyle yaparız
@Resource
UserTransaction utx;

public void transferFunds(Account debitAccount, Account creditAccount, double amount) 
throws Exception {
  try {
    utx.begin();
        
    debitAccount.withdraw(amount);
    creditAccount.deposit(amount);

    utx.commit();
  catch (Exception e) {
   utx.rollback();
   throw e;
  }
}

Bean Validation @GroupSequence Anotasyonu

Örnek Elimizde şöyle bir kod olsun public class SampleRequest {   @NotNull   LocalDate startDate;   @NotNull   LocalDate endDate;   @AssertT...