스프링 프레임워크에서 @Controller 어노테이션은 웹 애플리케이션의 컨트롤러 역할을 수행하는 클래스에 적용되는 어노테이션입니다. @Controller 어노테이션에 대해 자세히 알아보고, 예시를 통해 설명하도록 하겠습니다.
@Controller 어노테이션의 역할
@Controller 어노테이션은 스프링 MVC에서 웹 요청을 처리하는 컨트롤러 클래스에 붙여집니다. 이 어노테이션이 지정된 클래스는 웹 애플리케이션의 비즈니스 로직을 구현하고, 클라이언트로부터의 요청을 처리하여 적절한 응답을 반환합니다. @Controller 어노테이션은 스프링에게 해당 클래스가 컨트롤러로 사용됨을 알리는 역할을 합니다.
@Controller 어노테이션 예시
아래는 @Controller 어노테이션을 사용한 예시입니다.
@Controller
@RequestMapping("/users")
public class UserController {
@Autowired
private UserService userService;
@GetMapping("/{id}")
public ResponseEntity<User> getUser(@PathVariable("id") int id) {
User user = userService.getUserById(id);
if (user != null) {
return ResponseEntity.ok(user);
} else {
return ResponseEntity.notFound().build();
}
}
@PostMapping("/")
public ResponseEntity<User> createUser(@RequestBody User user) {
User createdUser = userService.createUser(user);
return ResponseEntity.status(HttpStatus.CREATED).body(createdUser);
}
}
위의 예시에서 UserController 클래스에 @Controller 어노테이션이 붙어있음을 볼 수 있습니다. 이 클래스는 /users 경로에 매핑되어 있는 웹 요청을 처리하고, getUser() 메소드와 createUser() 메소드는 각각 GET과 POST 요청에 대한 응답을 처리합니다.
마무리
이번 블로그에서는 스프링의 @Controller 어노테이션에 대해 알아보았습니다. @Controller 어노테이션이 붙은 클래스는 웹 애플리케이션의 컨트롤러 역할을 수행하며, 클라이언트의 요청을 처리하여 적절한 응답을 반환합니다.
'IT > spring' 카테고리의 다른 글
스프링 @ModelAttribute 어노테이션 (0) | 2023.06.29 |
---|---|
스프링 @RequestMapping 어노테이션 (0) | 2023.06.29 |
스프링 DispatcherServlet 인코딩 설정 (0) | 2023.06.28 |
스프링 DispatcherServlet (0) | 2023.06.28 |
Spring ViewResolver 클래스 (0) | 2023.06.27 |
댓글