Test için kodunuzu başka bir takıma verdiğinizde ve cevap alamadığınızda ne yapardınız?
Java
Bir sınıfta hashCode ve equals metodlarını nasıl doğru şekilde uygularız?
Son projenizde yüksek yük sistemlerine özgü teknolojiler ve çözümler kullanıldı mı?
Programlamada volatile anahtar kelimesinin amacını ve kullanım özelliklerini açıklayın.
Açhan sitesi devre dışı mı bırakıldı veya kapatıldı mı?
Kurumsal sohbetteki görevinizle ilgili mesajınızın cevaplanmaması durumunda ne yapardınız?
Dağıtık veri depolama sisteminin izlenmesi ve desteklenmesinden kim sorumluydu?
Partitionlar nerede dağıtılır
Spring Framework kullanan uygulamalarda istisna yönetimini nasıl gerçekleştirirsiniz?
Kafka'da hangi durumlarda veri kaybı mümkündür?
Java'da HashMap ve ConcurrentHashMap fonksiyonellik ve çok iş parçacıklı segmentlerde kullanım açısından nasıl farklılık gösterir?
Arızalara dayanıklı Kafka kümesi tasarımında brokerlar (düğümler) sayısını belirlemek için hangi formül kullanılır?
public class MoneyTransferService { /** * @param fromAccountId para birimi transfer eden kullanıcının benzersiz kimliği * @param toAccountId para transfer edilen kullanıcının benzersiz kimliği * @param amount transfer tutarı. Pozitif sayı */ @Transactional public void transferMoney(Long fromAccountId, Long toAccountId, BigDecimal amount) { if (amount.compareTo(BigDecimal.ZERO) <= 0) { throw new RuntimeException("Tutar pozitif olmalı"); } if (fromAccountId.equals(toAccountId)) { throw new RuntimeException("Hesap aynı olamaz"); } Long firstId = Math.min(fromAccountId, toAccountId); Long secondId = Math.max(fromAccountId, toAccountId); Account first = accountRepository.findByIdForUpdate(firstId) .orElseThrow(() -> new RuntimeException("Hesap bulunamadı")); Account second = accountRepository.findByIdForUpdate(secondId) .orElseThrow(() -> new RuntimeException("Hesap bulunamadı")); Account from = fromAccountId.equals(firstId) ? first : second; Account to = fromAccountId.equals(firstId) ? second : first; if (from.getBalance().compareTo(amount) < 0) { throw new RuntimeException("Yetersiz bakiye"); } from.setBalance(from.getBalance().subtract(amount)); to.setBalance(to.getBalance().add(amount)); accountRepository.save(to); accountRepository.save(from); } } @Entity @Data public class Account { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; private BigDecimal balance; }
Bir nesnenin HashMap koleksiyonunda kullanılabilmesi için nasıl doğru şekilde değiştirilir?
HashMap'in iç yapısının hangi öğeleri veya özellikleri oluşturulduktan sonra değiştirilemez?
Veri veya kaynak kaybını en aza indirmek için hizmet tasarımının temel ilkeleri nelerdir?
Java'da ArrayList ve LinkedList'e öğe ekleme işlemleri nasıl farklılık gösterir?
Java dilinde happens-before kavramını açıklayabilir misiniz ve bunun çoklu iş parçacığı güvenliğini sağlamadaki rolü nedir?