프로젝트에 사용한 어노테이션 정리 #1
@Controller
- 콘트롤러를 나타내는 어노테이션이다. 해당 어노테이션이 붙어있는 클래스를 프로그램의 콘트롤러로 설정한다.
@Service
- 서비스를 나타내는 어노테이션이다. 해당 어노테이션이 붙어있는 클래스를 프로그램의 서비스로 설정한다.
@Entity
- 엔티티를 나타내는 어노테이션이다. 해당 어노테이션이 붙어있는 클래스를 프로그램의 엔티티로 설정한다.
@RequestMapping
- Controller의 URI 메소드 정의 시 사용
- GET/POST/PATCH/PUT/DELETE의 종류가 있음
- 기본형은 GET
- 사용법 @RequestMapping("/경로/경로")
@GetMapping
- 요청 URL이 GET으로 요청들어왔을 때 사용됨
- 사용법 @GetMapping("/경로/경로2")
- 위와 같이 사용하면 도메인/경로/경로2에 GET으로 접속이 들어올 때 해당 메서드가 실행돈다.
- 페이지 표시에 많이 사용됨
@PostMapping
- 요청 URL이 POST로 요청들어왔을 때 사용됨
- 사용법 @PostMapping("/경로/경로2")
- 위와 같이 사용하면 도메인/경로/경로2에 POST로 접속이 들어올 때 해당 메서드가 실행돈다.
- 페이지 기능 구현에 많이 사용됨
@Getter
@Setter
※ getter와 setter는 보안상의 이유로 쓰지 않는다는 분도 보았음
@AllArgsConstructor(access = PROTECTED)
- 모든 필드 값을 파라미터 값으로 받는 생성자를 생성
@NoArgsConstructor(access = PROTECTED)
@RequiredArgsConstructor
- 초기화되지 않은 final 변수와 @NonNull이 붙은 필드에 대한 생성자를 자동 생성
- Required/Args(arguments)/Constructor 필수/인자/생성자로 추측
@PathVariable