728x90
반응형
용어정리
- ▷▷servlet: 클라이언트로 부터 request가 들어오면 그에 맞는 처리를 하고 response한다.
- WebContent: 해당 프로젝트의 물리적인 시작점(디렉토리), context root, 배포단위이자 프로젝트
(localhost:8787/Jsp01_MyBoard/)
MVC 흐름
- server로 request가 들어온다.
- listener가 request를 받아 어떤 xml(설정)을 열어줄지 선택하고, request를 처리해 줄 D.S.에 전달한다.
- requset를 받은 D.S.가 처리를 위한 Controller를 선택하여 호출한다.
- 호출된 Controller는 해당 요구에 맞는 Biz를 선택해 호출한다.
- 호출된 Biz는 Dao를 호출하고, 호출된 Dao는 DB와 연결해 요청을 처리한다.
- 처리된 결과는 Dao에서 출발하여 Biz를 거쳐 Controller에 도착한다.
- Controller는 결과를 model 객체에 담아 어떤 View인지 알려주는 정보와 함께 D.S.에 보낸다.
- 정보를 받은 D.S.는 해당 View에 model 객체에 담긴 정보를 추가하여 요청에 응답해준다.
Annotation 정리
<mvc:annotation-driven /> 태그가 찾아서 만들어준다.
-
@Controller
- controller가 될 class 위에 선언하여 해당 class가 controller임을 표기
- 자동으로 bean 객체가 만들어진다.
-
@Service
- Business Logic이 될 class 위에 선언하여 해당 class가 biz임을 표기
- 자동으로 객체가 만들어진다.
-
@Repository
- Dao가 될 class 위에 선언하여 해당 class가 dao임을 표기
- 자동으로 객체가 만들어진다.
-
@RequestMapping("url")
- url을 class 또는 method에 mapping
- 어떤 url이랑 연결될건지 이름표처럼 들고 있다고 이해하자.
-
@RequestParam("변수명")
- key = value 형태로 넘어오는 queryString(Parameter)을 mapping된 method의 parameter와 연결
- 변수명 자리에 넘어오는 key 값을 적어주면 method의 parameter명이 달라도 사용할 수 있다.
-
@ModelAttribute
- form tag를 통해서 넘어온 model을 mapping된 method의 parameter와 연결
-
@SessionAttribute
- session에서 model의 정보를 유지하고 싶을 때 사용
-
HandlerMapping(서블릿 매핑)
- RequestMapping을 골라준다.
코드 흐름으로 MVC 이해하기
▶︎ 파일 위치
태그정리
▶︎ <mvc:annotation-driven /> : spring mvc component들을 처리해주기위한 태그
▶︎ <listener> - server가 request를 받으면 listener가 어떤 xml을 열어줄지 판단한다.
-특정 xml이 열리면 그 파일에서 설정하고 있는 DispatcherServlet이 request를 받게 된다.
▶︎ <context-param> : context 전체에서 사용할 수 있는 변수, 프로그램 전체에서 사용되는 변수
TODO
Tasks를 통해 확인할 수 있는 기능을 가진 주석
- 사용방법
- 설정방법
- Window 탭의 preferences를 클릭
- type filter text에 todo를 검색
- General의 Task Tags를 선택
- Enable searching for Task Tags를 체크해주고 Apply / Apply and Close 클릭
- 사용방법
- Window 탭의 Show View 클릭
- Other 클릭 후 type filter text에 tasks 검색
- Tasks 클릭 후 Open 클릭
- 우측이나 하단에 나타난 Tasks에서 원하는 TODO를 누르면 해당 TODO의 위치로 이동할 수 있다.
- 설정방법
[Spring07_HelloMVC]
[자료지원: www.notion.so/Spring-06-HelloMVC-a4461ee3c60e45209b972876c30e03b7]
728x90
반응형
'Web > Spring' 카테고리의 다른 글
[Spring]MVC_1. 기본설정 순서 (0) | 2020.11.02 |
---|---|
[Spring]MVC_상대경로, @RequestParam, @ModelAttribute, Void (0) | 2020.10.29 |
[Spring]Annotation (0) | 2020.10.28 |
[Spring]AOP_관점지향 프로그래밍 (0) | 2020.10.27 |
[Spring]Autowire (0) | 2020.10.23 |