| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | ||||
| 4 | 5 | 6 | 7 | 8 | 9 | 10 |
| 11 | 12 | 13 | 14 | 15 | 16 | 17 |
| 18 | 19 | 20 | 21 | 22 | 23 | 24 |
| 25 | 26 | 27 | 28 | 29 | 30 | 31 |
- AOP
- produces
- gradle
- springmvc
- @RequestMapping
- 어노테이션
- SpringBoot
- 바인딩변수
- @
- @ResponseBody
- jointpoint
- @RequestParam
- Java
- @Valid
- frontController
- 서비스레이어
- MVC
- 의존주입
- spring
- springjdbc
- .xml
- Model
- after-throwing
- 생성자주입
- c:if
- 비즈니스레이어
- 유효성검사
- application.properties
- 스프링
- PointCut
- Today
- Total
메모장
@ 어노테이션의 종류 본문
지금 까지 배운 내용들 중심으로 @ 어노테이션의 종류에 대해 정리 해보았다.
@Component (스프링 컨테이너) ★★★★★
개발자가 직접 작성한 Class를 Bean으로 등록하기 위한 Annotation 이다. new 객체화 해주는 역할
@Autowired★★★★★
의존관계 주입(DI)을 할 때 사용하는 어노테이션(Annotation)이며,
의존 객체의 타입에 해당하는 빈(Bean)을 찾아 주입하는 역할을 한다.
@Webservlet (서블릿 컨테이너)★★★
얘가 유사 new 이다. 이걸 해주면 new를 해주라고 약속했는데 web.xml이랑 약속을 했다.
web.xml은 톰캣 == 서블릿 컨테이너
== 서블릿을 new해주는 주체
== new 뿐만 아니라 생성시점, 호출 시점들도 관리 가능
@Component ( 다들 new 는 기본적이고 조금씩 다른 특징이 있다.)
1) @Repository ★★★★
DB나 파일같은 외부 I/O 작업을 처리함 (Model파트 , DAO 에서 실행 될때 )
스프링 컨테이너가 메모리를 관리하기에 유리 -> 속도향상
xxxDAO 라고 DAO라고 이름이 안붙을수도 있음 -> @Repository 덕분에ㅔ
2) @Service (C, Service 레이어에서 활용됨)★★★★
클래스 류 뒤에 Impl 가 붙어있으면 뭔가의 기능을 이 클래스 로 구현한 것이다.
Service 레이어에서는 DAO 를 사용함
멤버변수로 boardDao를 가지고 있고 의존 관계 이다. == (Controller파트 , Service 레이어에서 활용됨)
DAO를 사용할 것이기 때문에
DAO와 메서드 시그니처를 맞추면 유리함. 메서드 시그니처를 강제하고 싶다면? => 인터페이스
3) @Controller ★★★★
Controller 파트 , implements Controller를 대신한다.
implements Controller 가 없어지면 메서드 강제성이 없어지고 메서드시그니처가 고정되어있지 않음.
Command 객체 사용도 가능해진다.
(1) @RequestMapping (value="/login.do") ★★★★
언제 동작해 ? login.do 요청 일때
(2) @ModelAttribute("이름");★
- C와 V 에서 데이터가 오고가고 잘 되는지를 Controller가 확인 하고 싶을 때,
@ModelAttribute("이름") 어노테이션을 사용해서, 객체를 View 에게 넘겨준다.
- view에서 사용할 데이터를 세팅하려는 목적으로 활용하는 @ 어노테이션 으로
@을 사용함으로써 view 에서 지정한 "특정이름" 을 쓸 수 있게 된다. << 더 잘 쓰이는 용도
(3) @RequestParam★
커맨트 객체에 없는값을 받으려고 할때
'Spring > 개념정리' 카테고리의 다른 글
| Spring 제공 MVC로 바꾸기 (@ 어노테이션 방식) (0) | 2024.06.21 |
|---|---|
| Spring 제공 MVC로 바꾸기 (.xml 방식) (0) | 2024.06.21 |
| Spring MVC 구조 설명 (1) | 2024.06.21 |
| 기존 JSP -> Spring 이관작업 흐름 정리 (0) | 2024.06.21 |
| Annotation ( @, 어노테이션 ) (0) | 2024.05.30 |