Quels méthodes sont utilisées pour échanger des données entre microservices dans l'architecture?
Java
Comment peut-on supprimer une dépendance de bibliothèque dans le système de build Maven?
Implémenter le transfert de fonds entre deux comptes. Notez qu'il s'agit d'une solution de production Paramètres d'entrée: @param fromAccountId identifiant unique de l'utilisateur qui transfère des fonds @param toAccountId identifiant unique de l'utilisateur à qui les fonds sont transférés @param amount montant du transfert. Nombre positif public void transferMoney(Long fromAccountId, Long toAccountId, BigDecimal amount) { if (amount.compareTo(BigDecimal.ZERO) <= 0) { throw new RuntimeException("Le montant doit être > 0"); } if (fromAccountId.equals(toAccountId)) { throw new RuntimeException("Le compte ne peut pas être le même"); } Long firstId = Math.min(fromAccountId, toAccountId); Long secondId = Math.max(fromAccountId, toAccountId); Account first = accountRepository.findByIdForUpdate(firstId) .orElseThrow(() -> new RuntimeException("Compte non trouvé")); Account second = accountRepository.findByIdForUpdate(secondId) .orElseThrow(() -> new RuntimeException("Compte non trouvé")); Account from = fromAccountId.equals(firstId) ? first : second; Account to = fromAccountId.equals(firstId) ? second : first; if (from.getBalance().compareTo(amount) < 0) { throw new RuntimeException("Solde insuffisant"); } from.setBalance(from.getBalance().subtract(amount)); to.setBalance(to.getBalance().add(amount)); accountRepository.save(to); accountRepository.save(from); }
Le service peut-il fonctionner correctement en cas de défaillance de la connexion à la base de données?
Comment HashMap gère-t-il les situations où des objets avec des clés identiques sont ajoutés ?
Quels types de données ou valeurs ne peuvent pas être utilisés comme valeur pour une clé secondaire dans une table de base de données?
Quelle est la différence entre la méthode destroy() lors de la suppression d'instances de beans de type Singleton et Prototype?
Comment peut-on réaliser la correspondance d'une classe avec une table de base de données dans Hibernate?
Quel est le rôle et les fonctions de la commande 'clean' dans le système de build Maven?
Où se trouvait le Circuit Breaker dans votre système : à l'entrée ou sur les appels sortants?
Pourquoi est-il théoriquement impossible de garantir CA sans P?
Qu'est-ce que la ruée vers le cache et la pénétration du cache ? Comment y faire face ?
Modifiez la méthode pour qu'en cas de dépassement, une erreur soit renvoyée. Montrez cela avec un exemple d'addition de deux nombres.
Pouvez-vous décrire votre expérience avec l'outil d'automatisation des migrations de bases de données Liquibase?
Comment avez-vous optimisé ou résolu le problème des requêtes longues à exécuter sur la base de données?
Pouvez-vous expliquer comment fonctionne l'opérateur instanceof en Java et dans quelles situations il est utilisé?
Quelles sont les restrictions lors de l'utilisation de null comme clé dans une table de hachage?
Quels types d'interactions et formats de données ont été utilisés lors de l'utilisation de l'API REST?
Avez-vous respecté certaines règles ou normes lors de l'analyse du code d'un autre développeur?
Partagez des exemples de tâches que vous avez trouvé intéressant à résoudre dans votre pratique