본문 바로가기
IT/spring

스프링 @Controller 어노테이션

by 뉴코딩맨 2023. 6. 29.
스프링 프레임워크에서 @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

댓글