Junior — Middle
Je možné považovať kontrolér za komponentu banu v kontexte Spring alebo podobného rámca?
sobes.tech AI
Odpoveď od AI
Áno, kontrolér v Springu (alebo v podobných frameworkoch) možno považovať za komponentu beana. V Springu sú kontroléry zvyčajne anotované s @Controller alebo @RestController, čo ich automaticky registruje ako Spring Bean v kontexte aplikácie.
Toto umožňuje využívať výhody Spring IoC kontajnera, ako je injektáž závislostí, správa životného cyklu a konfigurácia. Takže kontroléry sú spravované komponenty, ktoré spracúvajú HTTP požiadavky a komunikujú so servisnou vrstvou.
Príklad:
@RestController
public class UserController {
private final UserService userService;
public UserController(UserService userService) {
this.userService = userService;
}
@GetMapping("/users/{id}")
public User getUser(@PathVariable Long id) {
return userService.findById(id);
}
}
Tu je UserController Spring Bean, ktorý je spravovaný kontajnerom.