본문 바로가기
spring

[Spring] Annotation 종류와 역할

by devebucks 2020. 3. 17.
728x90

회사에서 Spring으로 프로젝트 하면서 어노테이션을 많이 접하게 되었습니다.

 

어떤 때는 값이 서버에서 jsp로 안넘어 가길래 알아봤더니..RequestBody를 해줘야 값이 받아지기도 해서 이번 기회에 Spring  MVC모델에서 자주 사용하는 어노테이션에 대해서 정리해보고자 합니다..

 

@Controller

Controller.java에서 가장 먼저 클래스에 사용하는 어노테이션입니다. Spring 프레임워크에 Controller 객체라는 것을 알려주는 어노테이션입니다.

 

@RequestMapping

 Controller.java에서 Controller객체 안에 있는 메서드와 클래스에 사용하는 어노테이션입니다. URI의 요청이  RequestMapping(value="")에 value값이 일치하면 해당 클래스나 메소드가 실행됩니다.

@RequestBody

요청 문자열이 그대로 파라미터로 전달되도록 하는 어노테이션입니다.

@ResponseBody

메서드와 리턴타입에 사용합니다. 리턴 타입이 HTTP의 응답 메시지로 전송이 되도록 하는 어노테이션입니다.

 

@RequestParam

화면단(view)에서 요청을 통해서 넘어온 값을 controller.java에서 받을 때 @RequestMapping으로 명시된 메서드의 파라미터에 @RequestParam을 사용합니다. 요청에서 특정한 파라미터의 값을 찾아낼 때 사용하는 어노테이션입니다.

@Repository

DAO.java에 DAO클래스에 사용합니다. DAO 객체임을 알리는 어노테이션입니다.

@Service

Service.java에 service객체임을 알리는 어노테이션입니다.

 

@Autowired

기능 : IoC컨테이너 안에 존재하는 Bean을 자동으로 주입해준다.

 

객체를 쉽게 가져다 사용하기 위한 방법이다. Autowired를 사용하지 않는다면 Service.java에 사용하고자 하는 xml파일에 bean설정을 해줘야 한다.

 

get/set 접근 메서드를 더 이상 만들지 않아도 SpringFramework 이 설정 파일을 통해서 알아서 get/set 접근 메서드를 자동으로 사용할 수 있게 해준다.

 

 

 

ex)

728x90

댓글