Junior
Πώς δημιουργείτε έναν ελεγκτή στο Spring;
sobes.tech AI
Απάντηση από AI
- Δημιουργήστε μια κλάση και σημειώστε την με την ανώτατη
@Controller(για MVC) ή@RestController(για REST). - Μέσα στην κλάση, ορίστε μεθόδους για την επεξεργασία αιτημάτων HTTP.
- Σημειώστε αυτές τις μεθόδους με annotations mapping, π.χ.
@GetMapping,@PostMapping,@PutMapping,@DeleteMapping,@RequestMapping, καθορίζοντας τις διαδρομές πρόσβασης. - Μέσα στις μεθόδους, γράψτε τη λογική επεξεργασίας του αιτήματος και επιστροφής της απάντησης.
Παράδειγμα με @RestController:
// Χρησιμοποιείται για τη δημιουργία RESTful web services.
// Περιλαμβάνει `@Controller` και `@ResponseBody`.
@RestController
@RequestMapping("/users") // Βασική διαδρομή για όλα τα endpoints σε αυτόν τον ελεγκτή
public class UserController {
// Μέθοδος για επεξεργασία GET αιτημάτων στο /users.
@GetMapping
public List<User> getAllUsers() {
// Λογική για την απόκτηση όλων των χρηστών
return // λίστα χρηστών;
}
// Μέθοδος για επεξεργασία GET αιτημάτων στο /users/{id}.
@GetMapping("/{id}")
public User getUserById(@PathVariable Long id) {
// Λογική για την απόκτηση χρήστη με id
return // χρήστης;
}
// Μέθοδος για επεξεργασία POST αιτημάτων στο /users.
@PostMapping
public ResponseEntity<User> createUser(@RequestBody User user) {
// Λογική για τη δημιουργία νέου χρήστη
User createdUser = // δημιουργημένος χρήστης;
// Επιστρέφουμε κατάσταση 201 Created
return ResponseEntity.status(HttpStatus.CREATED).body(createdUser);
}
}