Sobes.tech

Java

Expliquez le concept de cohérence des données dans les systèmes de stockage d'informations.

Junior — Middle
202

Peut-on inclure une requête géographique dans les paramètres d'une requête HTTP GET ?

Junior — Middle
202

Dans quels cas et dans quelles conditions des pertes de données peuvent-elles se produire dans Kafka?

199

Quels problèmes peuvent survenir si on modifie une collection pendant son parcours?

Junior — Middle
199

Qu'est-ce qui influence le temps lors de l'ajout d'un élément à la fin d'une liste chaînée?

Junior — Middle
198

Quelle est la complexité temporelle de l'insertion d'un élément au milieu d'une liste chaînée si vous avez déjà un tableau rempli?

Junior — Middle
197

Pouvez-vous expliquer ce qu'est Gson et comment il fonctionne avec les champs lors de la sérialisation et de la désérialisation?

Junior — Middle
197

Quel est le niveau de difficulté lors de l'augmentation de la taille de ArrayList lors de l'ajout de chaque 1000 éléments?

Junior — Middle
197

Quelles difficultés et limitations potentielles peuvent survenir lors de l'utilisation de Kafka dans les systèmes?

Middle — Middle+
197

Peut-on réutiliser des flux de données (Streams) déjà fermés en Java?

Junior — Middle
197

Sur quel serveur ou plateforme le déploiement de l'application a-t-il été effectué?

Junior — Middle
197

Quels composants la architecture de Kafka comprend-elle et comment interagissent-ils entre eux?

Junior — Middle
196

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); }

196

Comment mesurer l'efficacité du travail avec les données et à quoi cela influence-t-il?

Junior — Middle
196

Pouvez-vous nommer deux types de méthodes utilisés dans l'API Stream?

Junior — Middle
195

Qu'est-ce qui vous motive à envisager de changer de projet actuel?

Junior — Middle
195

Dans quels cas est-il préférable d'utiliser la structure de données LinkedList plutôt que d'autres collections?

Junior — Middle
195
/11