Service layer CRUD
Implementare un service layer che fornisca operazioni CRUD per le entità.
Service layer CRUD è una lezione Java Academy gratuita su CoddyKit. Questa è la lezione 2 di 3. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Java Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Java Academy include 3 lezioni in totale.
Introduzione
Il service layer si trova tra controller e repository. Centralizza la logica di business.
Codice: entità User
Proseguiamo con l'entità User definita in precedenza.
import jakarta.persistence.*;@Entity
public class User {
@Id @GeneratedValue
private Long id;
private String name;
// getters/setters omitted
}
Codice: CRUD del service
Il service racchiude le chiamate al repository e, se necessario, aggiunge regole di business.
import org.springframework.stereotype.Service;import java.util.*;
@Service
public class UserService {
private final UserRepository repo;
public UserService(UserRepository repo) { this.repo = repo; }
public List<User> all() { return repo.findAll(); }
public User add(User u) { return repo.save(u); }
public Optional<User> find(Long id) { return repo.findById(id); }
public void delete(Long id) { repo.deleteById(id); }
}
Codice: controller con service
Ora il controller chiama il service anziché il repository direttamente.
import org.springframework.web.bind.annotation.*;import java.util.*;@RestController
@RequestMapping("/users")
public class UserController {
private final UserService service;
public UserController(UserService service) { this.service = service; }
@GetMapping
public List<User> all() { return service.all(); }
@PostMapping
public User add(@RequestBody User u) { return service.add(u); }
@GetMapping("/{id}")
public User one(@PathVariable Long id) { return service.find(id).orElse(null); }
@DeleteMapping("/{id}")
public void delete(@PathVariable Long id) { service.delete(id); }
}
Vantaggi
Vantaggi: controller più puliti, logica riutilizzabile, test più semplici e architettura più chiara.
Utilizzo
Testate gli endpoint: POST /users, GET /users, GET /users/{id}, DELETE /users/{id}.
Verifica del service layer
Verifica rapida: perché è utile un service layer in Spring Boot?
Riepilogo
Riepilogo: abbiamo creato un service layer con operazioni CRUD, lo abbiamo utilizzato in un controller e abbiamo osservato i vantaggi della separazione.
Domande Frequenti
La lezione «Service layer CRUD» è gratuita?
Sì — il testo completo di «Service layer CRUD» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Java Academy, passa a CoddyKit PRO. Il corso Java Academy include 3 lezioni in totale.
Cosa imparerò in «Service layer CRUD»?
Implementare un service layer che fornisca operazioni CRUD per le entità. Eserciti Java Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare Java Academy?
Non è richiesta alcuna esperienza precedente. Java Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 2 di 3.
Quanto tempo richiede la lezione «Service layer CRUD»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione Java Academy?
Sì. Ogni lezione Java Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- JPA/H2 e repository
- Service layer CRUD
- Gestione degli errori e Advice