Java
Detaljno objasnite event-driven interakciju između servisa koristeći Kafka.
Da li je implementacija idempotentnog obrade događaja uspeh za seniora ili je to ono što se od njega očekuje po difoltu?
На којим пројектима и са којим производима сте радили у [компанији]?
Ispričajte nam o višeslojnom programiranju u Javi: šta ste koristili?
Могу ли тестови да се побољшају, на пример, смањењем количине кода?
Kako su spojili tim?
class User { String ime; public int hashCode() { return ime.hashCode(); } public boolean equals(Object o) { return o instanceof User u && ime.equals(u.ime); } } Map<User, String> map = new HashMap<>(); User u = new User(); u.ime = "Bob"; map.put(u, "programer"); u.ime = "Alice"; System.out.println(map.get(u));
10 aplikacija za obradu preuzimaju zadatke iz baze podataka. Kako sprečiti da dve instance preuzmu isti zadatak?
Šta je bilo sinhrono i šta se promenilo? Koji od dva slučaja (po rasporedu ili po promeni statusa) je bio sinhron?
Šta tražite u timu i proizvodu? Koji su vaši kriterijumi pri izboru radnog mesta?
Šta je problem N+1 u JPA/Hibernate? Kako je rešen?
@PutMapping("/create") public Book create(@RequestBody CreateBook request) throws Exception { System.out.println("Provera da li knjiga postoji " + map); Book book = new ObjectMapper().convertValue(map, Book.class); Book b = repo.findByTitle(book.getTitle()); if (b != null) { throw new Exception("Knjiga već postoji"); } book.setId(UUID.randomUUID().toString()); repo.save(book); log.debug("Knjiga {} od {} je kreirana sa id {}", book.getTitle(), book.getAuthor(), book.getId()); return book; } @GetMapping("/get") public Book get(@QueryParam("id") String id) { log.debug("Preuzimanje knjige " + id); return repo.findAll().stream() .filter(b -> b.getId().equals(id)) .findFirst().get(); } @GetMapping("/{id}") public Book get(@RequestParam("id") String id) { log.debug("Preuzimanje knjige ", id); return repo.findById(id).orElseThrow(() -> new BookAlreadyExeption("knjiga nije pronađena")) findAll().stream() .filter(b -> b.getId().equals(id)) .findFirst().get(); }
Tabela person sa spiskom zaposlenih id ime 1 Petya 2 Vasya 3 Kolya Tabela payment sa platama id person_id payment_value [phone] Potrebno je napisati upit za odabir imena zaposlenih sa ukupnim isplatama većim od 100
Koji je glavni problem ove implementacije? - Ne koristi se keširanje u memoriji za optimizaciju. - Različiti tipovi skladištenja podataka u istom hashu - Provera prekidača pre čitanja podataka ne daje rezultate - Nedostatak standardnih serializatora u `RedisTemplate` - Pipeline se ne koristi za parcijalne operacije
Zadatak sa kodom: Spring @Transactional i samoinvokacija (screenshot sa kodom)
Koju kolekciju koristiti za tabelu rezultata sa sortiranjem po prezimenu i pretraživanjem po ključevi?
Kako se REST uklapa u skladištenje podataka o korisnicima (na primer, u internet prodavnici)?
Реците о вашем искуству у развоју и у којем правцу желите да растете.
Ispričajte o konkretnim rezultatima i dostignućima u brojevima.
Da li ste ikada morali da optimizujete uslov NOT IN? Koliko je to loše i kako to optimizovati?