Fondamenti di Spring Data JPA
Spring Data JPA, JpaRepository, EntityManager, DataSource, HikariCP, configurazione JPA (spring.jpa.*)
1Che cos'è JPA (Java Persistence API)?
Che cos'è JPA (Java Persistence API)?
Risposta
JPA è una specifica standard di Java che definisce interfacce comuni per la persistenza di oggetti relazionali. Permette di mappare classi Java su tabelle di database relazionali. Hibernate, EclipseLink e OpenJPA sono implementazioni di questa specifica. Usare JPA permette di cambiare implementazione ORM senza riscrivere il codice di business.
2Qual è il vantaggio principale dell'uso di JPA rispetto a JDBC puro?
Qual è il vantaggio principale dell'uso di JPA rispetto a JDBC puro?
Risposta
JPA consente di manipolare oggetti Java anziché scrivere SQL manualmente. L'ORM gestisce automaticamente il mapping tra classi e tabelle, genera le query SQL e gestisce le relazioni tra entità. Questo riduce il codice boilerplate, diminuisce gli errori di mapping manuale e migliora la manutenibilità del codice di business.
3Qual è il ruolo principale dell'EntityManager in JPA?
Qual è il ruolo principale dell'EntityManager in JPA?
Risposta
L'EntityManager è l'interfaccia centrale di JPA che gestisce il ciclo di vita delle entità e la loro interazione con il database. Fornisce metodi per persistere, cercare, aggiornare ed eliminare le entità. L'EntityManager gestisce anche il persistence context, che mantiene la cache di primo livello delle entità caricate.
Qual è la differenza tra JPA e Hibernate?
Che cos'è il persistence context in JPA?
+22 domande da colloquio
Altri argomenti di colloquio Spring Boot
Spring Core - IoC & DI
Spring Boot Auto-Configuration
Spring Boot Starters
Application Properties & YAML
Logging con SLF4J e Logback
Spring Boot DevTools
Spring MVC Basics
Spring REST Controllers
Request & Response Handling
Gestione delle eccezioni
Bean Validation
Entità JPA e relazioni
Query JPA
Spring Data Repositories
Fondamenti di Spring Security
Spring Boot Actuator
Test unitari con JUnit e Mockito
Testing in Spring Boot
Profiles e Environment
RestTemplate e WebClient
Async e Scheduling
Caching con Spring
Spring WebFlux (Reactive)
Transazioni Spring
Autenticazione e autorizzazione avanzate
JWT e sicurezza stateless
OAuth2 e Authorization Server
Spring Boot e Docker
Microservices con Spring
Spring Cloud Config
Ottimizzazione delle prestazioni
GraalVM Native Images
Padroneggia Spring Boot per il tuo prossimo colloquio
Accedi a tutte le domande, flashcards, test tecnici, esercizi di code review e simulatori di colloquio.
Inizia gratis