Akými metódami sa v architektúre vykonáva výmena údajov medzi mikroslužbami?
Java
Ako odstrániť závislosť knižnice v systéme zostavovania Maven?
Implementujte prevod finančných prostriedkov medzi dvoma účtami. Majte na pamäti, že ide o výrobný riešenie Vstupné parametre: @param fromAccountId jedinečný identifikátor používateľa, ktorý prevádza finančné prostriedky @param toAccountId jedinečný identifikátor používateľa, ktorému sa prevádzajú finančné prostriedky @param amount suma prevodu. Kladné číslo public void transferMoney(Long fromAccountId, Long toAccountId, BigDecimal amount) { if (amount.compareTo(BigDecimal.ZERO) <= 0) { throw new RuntimeException("Suma musí byť > 0"); } if (fromAccountId.equals(toAccountId)) { throw new RuntimeException("Účet nemôže byť rovnaký"); } Long firstId = Math.min(fromAccountId, toAccountId); Long secondId = Math.max(fromAccountId, toAccountId); Account first = accountRepository.findByIdForUpdate(firstId) .orElseThrow(() -> new RuntimeException("Účet nenájdený")); Account second = accountRepository.findByIdForUpdate(secondId) .orElseThrow(() -> new RuntimeException("Účet nenájdený")); Account from = fromAccountId.equals(firstId) ? first : second; Account to = fromAccountId.equals(firstId) ? second : first; if (from.getBalance().compareTo(amount) < 0) { throw new RuntimeException("Nedostatok na účte"); } from.setBalance(from.getBalance().subtract(amount)); to.setBalance(to.getBalance().add(amount)); accountRepository.save(to); accountRepository.save(from); }
Môže služba správne fungovať pri zlyhaní spojenia s databázou?
Ako HashMap spravuje situácie, keď sa do nej pridávajú objekty s rovnakými kľúčmi?
Aké typy údajov alebo hodnoty nie je možné použiť ako hodnotu pre sekundárny kľúč v tabuľke databázy?
Aký je rozdiel medzi metódou destroy() pri odstraňovaní inštancií beanov typu Singleton a Prototype?
Ako môže Hibernate implementovať mapovanie triedy na tabuľku v databáze?
Aká je úloha a funkcie príkazu 'clean' v systéme zostavovania Maven?
Kde bol vo vašom systéme Circuit Breaker: na vstupe alebo na odchádzajúcich hovoroch?
Prečo je teoreticky nemožné garantovať CA bez P?
Čo je cache stampede a cache penetration? Ako s nimi bojovať?
Upravte metódu tak, aby pri pretečení vracala chybu. Demonštrujte to na príklade sčítania dvoch čísel.
Môžete opísať svoju skúsenosť s nástrojom na automatizáciu migrácií databáz Liquibase?
Ako ste optimalizovali alebo vyriešili problém s dlhým trvaním dopytov do databázy?
Môžete vysvetliť, ako funguje operátor instanceof v Jave a v akých situáciách sa používa?
Aké obmedzenia existujú pri používaní null ako kľúča v hash tabuľke?
Aké typy interakcií a formátov dát boli pri práci s REST API použité?
Dodržiavali ste pri analýze kódu iného vývojára určité pravidlá alebo štandardy?
Zdieľajte príklady úloh, ktoré ste považovali za zaujímavé riešiť vo svojej praxi