Sobes.tech

Java

Kas reaktsioonikood koos sünkroonsete tehingutega on hästi ühilduv?

161

Millistel juhtudel tasub kasutada natiivseid SQL-päringuid ja millistel - Hibernate?

155

Kuidas lahendada andmete ebakõla probleem: väline kõne õnnestus, kuid andmebaasi salvestamine ebaõnnestus?

155

/** * Liides ATM-i riistvara osaga suhtlemiseks. */ interface Hardware { /** * Tagastab massiivi, mis näitab kupüüride arvu nominaalidega 50, 100, 500, 1000, 5000. * Meetod töötab aeglaselt ja tekitab müra. * * @return massiiv, kus iga element vastab kindla nominaali kupüüride arvule. * Näiteks, [10, 20, 30, 40, 50] tähendab: * - 10 kupüüri nominaaliga 50 rubla * - 20 kupüüri nominaaliga 100 rubla * - 30 kupüüri nominaaliga 500 rubla * - 40 kupüüri nominaaliga 1000 rubla * - 50 kupüüri nominaaliga 5000 rubla */ int[] getBillsCounts(); /** * Laadib välja antud kupüürid väljapakkekastile. * * @param billsCounts massiiv kupüüride arvuga vastavalt nominaalidele [50, 100, 500, 1000, 5000]. * Näiteks, [0, 1, 0, 2, 0] tähendab: * - 0 kupüüri nominaaliga 50 rubla * - 1 kupüür nominaaliga 100 rubla * - 0 kupüüri nominaaliga 500 rubla * - 2 kupüüri nominaaliga 1000 rubla * - 0 kupüüri nominaaliga 5000 rubla */ void giveBills(int[] billsCounts); } /** * Klass, mis realiseerib ATM-i töö loogika. * Siia tuleb kirjutada kood */ class MyATM { /** * ATM-i riistvara osa. */ Hardware hardware; public boolean withdraw(int amount) { int[] counts = hardware.getBillsCounts(); int[] nom = {50, 100, 500, 1000, 5000}; int[] toGive = new int[5]; for (int i = 4; i >= 0; i--) { int needed = amount / nom[i]; int use = Math.min(needed, counts[i]); toGive[i] = use; amount -= use * nom[i]; } if (amount != 0) { return false; } hardware.giveBills(toGive); return true; } }

154

select name from employee group by name having COUNT(DISTINCT lang) >= 2;

154

Rääkige oma viimase projektist: millega te tegelesite, millised olid ülesanded, millist tehnoloogiat kasutasite?

152

Kuidas hindate VK algatust luua oma andmebaas ning kuidas hindaksite selle kvaliteeti ja tõhusust?

Junior — Middle
150

Millised on ObjectMapperi loomise tagajärjed klassi väljana (mitte Springi kaudu)?

143

/** * Meetod arvutab, kui palju punkte kandidaat on saavutanud, * salvestab tulemuse andmebaasi ja kutsub välise teenuse callbacki */ public void process(Candidate c) { transactionTemplate.executeWithoutResult(status -> { Score s = interviewScoreMLService.compute(c); String body = objectMapper.writeValueAsString(Map.of(c.getName(), s)); Mono<ResponseEntity<Void>> request = WebClient.create() .post() .body(BodyInserters.fromValue(body)) .retrieve() .toBodilessEntity(); scoreRepository.saveScore(s); }); }

131
/2