Junior — Middle
Kas on võimalik pidada kontrollorit Springi või sarnase raamistiku kontekstis bean-komponendiks?
sobes.tech AI
Vastus AI-lt
Jah, kontrollör Springis (või sarnastes raamistikudes) võib olla vaadeldav kui bean-komponent. Springis on kontrollorid tavaliselt märgitud @Controller või @RestController, mis automaatselt registreerivad need kui Spring Bean rakenduse kontekstis.
See võimaldab kasutada Spring IoC konteineri eeliseid, nagu sõltuvuste injekteerimine, elutsükli haldamine ja konfiguratsioon. Seega on kontrollorid hallatavad komponendid, mis töötlevad HTTP-päringuid ja suhtlevad teenusekihiga.
Näide:
@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);
}
}
Siin on UserController Spring Bean, mida konteiner haldab.