¿En qué se diferencian las anotaciones @Bean y @Service en Spring Framework?
Java
¿Puedes explicar qué es Spring y para qué se utiliza en el desarrollo en Java?
¿Cuál es el objetivo principal del uso de interfaces funcionales en programación?
¿Cómo se evalúa la eficiencia de buscar un elemento dentro de la estructura HashMap?
¿Cuál es la diferencia entre WHERE y HAVING?
¿Cómo evalúa su nivel: medio o senior?
¿Qué hace el método reduce?
¿Qué es una fuga de memoria en Java? ¿Cuál es el algoritmo para detectarla?
public static void main(String args[]) { checkMap(new HashMap<>()); checkMap(new LinkedHashMap<>()); checkMap(new TreeMap<>()); } private static void checkMap(Map<Person, String> map) { System.out.println("Checking " + map.getClass()); Person ivan = new Person("Иван"); Person peter = new Person("Пётр"); Person maria1 = new Person("Мария"); Person maria2 = new Person("Мария"); map.put(ivan, ivan.name); map.put(peter, peter.name); map.put(maria1, maria1.name); map.put(maria2, maria2.name); // iterate and println for (Map.Entry<Person, String> entry : map.entrySet()) { System.out.println(entry); } // maria1.setName("Анна-Мария"); // maria2.setName("Анна-Мария"); System.out.println(map.get(maria1)); System.out.println(map.get(maria2)); System.out.println("==================================="); }
¿Qué colección usar para almacenar el historial de páginas visitadas sin duplicados y manteniendo el orden?
//Encontrar el primer elemento que no se repite en un array de enteros int[] arr = {9, 4, 9, 6, 7, 4, 5}; int n = ...;
¿Tiene experiencia en el uso de concurrencia en proyectos Java?
¿Cómo encontrar una fuga de memoria (análisis de Heap Dump)?
public class Accumulator { private Map<String, Object> data = new HashMap<>(); // conjunto actual de datos private List<Map<String, Object>> dataList = new ArrayList<>(); // lote de datos private Map<Instant, String> responses = new HashMap<>(); // respuestas del servidor que recibe datos private int dataId; /** * Agrega un campo field con el valor value al conjunto */ public void add(String field, String value) { data.put(field, value); } /** * Devuelve el valor por el nombre del campo field */ public <T> T get(String field) { return (T) data.get(field); } /** * Devuelve las respuestas del servidor que recibe datos */ public String getResponses() { String out = ""; for (String resp : responses.values()) { out += "; " + resp; } return out; } /** * Finaliza la recopilación del conjunto actual de datos y lo envía en un lote */ public synchronized void push() { dataList.add(data); if (dataList.size() == 100) { send(); dataList.clear(); } data = new HashMap<>(); data.put("id", dataId++); } /** * Envía el lote al servidor que recibe datos */ private void send() { RestTemplate restTemplate = new RestTemplate(); HttpEntity<List<Map<String, Object>>> request = new HttpEntity<>(dataList); String url = "localhost:20808/msg/incoming"; ResponseEntity<String> response = restTemplate.exchange(url, HttpMethod.GET, request, String.class); responses.put(Instant.now(), response.getBody()); } }
¿Qué colección usaría para implementar la estructura de datos pila?
¿Cómo suscribirse a Flux/Mono en programación reactiva? ¿Qué opciones existen?
¿Qué habilidades o conocimientos buscas desarrollar en el próximo futuro?
¿Cómo implementa los métodos de comparación de objetos y cálculo de sus códigos hash en su código?
¿En qué condiciones no se llamará el bloque finally durante la ejecución del programa?
¿Cuántos hilos paralelos habrá en parallelStream por defecto?