Q.
웹브라우저가 컨트롤러에 접속하면, 컨트롤러의 연산을 끝내고 난 뒤에 나온 return 값의 페이지에 접속을 하는거야?
A.
GitHub Copilot
네, 맞습니다. 웹 브라우저가 컨트롤러에 접속하면, 컨트롤러는 요청을 처리한 후 return 값으로 지정된 뷰 이름을 반환합니다. 그 후, Spring MVC는 해당 뷰 이름에 해당하는 템플릿 파일을 찾아서 클라이언트(웹 브라우저)에게 렌더링된 HTML 페이지를 반환합니다.
예를 들어, SurveyController의 step3 메서드를 보면:
@GetMapping("/survey/step3")
public String step3(Model model,
@RequestParam("name") String name,
@RequestParam("age") int age,
@RequestParam("group") String group) {
// 이전 페이지에서 입력받은 내용을 view에 전달한다.
model.addAttribute("name", name);
model.addAttribute("age", age);
model.addAttribute("group", group);
return "survey/step3";
}
1. 클라이언트가 /survey/step3 URL로 GET 요청을 보냅니다.
2. 컨트롤러의 step3 메서드가 호출됩니다.
3. 메서드는 요청 파라미터(name, age, group)를 받아서 Model 객체에 추가합니다.
4. 메서드는 "survey/step3" 문자열을 반환합니다.
5. Spring MVC는 "survey/step3"에 해당하는 뷰 템플릿 파일(예: survey/step3.html 또는 survey/step3.jsp)을 찾아서 렌더링합니다.
6. 렌더링된 HTML 페이지가 클라이언트에게 반환되고, 웹 브라우저는 해당 페이지를 표시합니다.
따라서, 컨트롤러의 연산이 끝난 후 return 값으로 지정된 뷰 페이지가 클라이언트에게 전달되어 브라우저에 표시됩니다.
'언어 및 도구들 공부 > Spring' 카테고리의 다른 글
GetMapping? PostMapping? (0) | 2024.10.15 |
---|---|
Path 파라미터와 QueryString의 차이점 (0) | 2024.10.15 |
html에서의 put 과 delete 메서드 (0) | 2024.10.15 |
Model 객체 안에 넣을 수 있는 파라미터 수 (0) | 2024.10.14 |
뷰? View? 그리고 @ResponseBody 3 (0) | 2024.10.14 |