📌 페이지 컨트롤러 만드는 방법
@Controller // 너는 이제부터 컨트롤러야
@RequestMapping("/c01_1") // 컨트롤러에 URL을 매핑하지요
@RequestMapping // RequestHandler의 어노테이션 : 요청이 들어왔을 때 호출될 메서드임을 표시한다.
@ResponseBody // 메서드의 리턴 값이 클라이언트에게 출력할 내용임을 표시한다. View 컴포넌트로 보낼려면 빼면 됨
- 🗸 URL 한 개 당 한 개의 핸들러만 연결할 수 있다.
- 🗸 같은 URL에 대해 다른 메서드를 또 정의하면 실행 오류가 발생한다.
@Controller
@RequestMapping("/c01_1")
public class Controller01_1 {
@RequestMapping
@ResponseBody
public String handler() {
return "c01_1 -> handler()";
}
//@RequestMapping 주석 풀면 오류발생!
@ResponseBody
public String handler2() {
return "c01_1 -> handler2()";
}
}
📌 페이지 컨트롤러 만드는 방법 - 한 개의 페이지 컨트롤러에 여러 개의 요청 핸들러 두기
- 🗸 요청이 들어 왔을 때 호출되는 메서드를 "RequestHandler" 라 부른다.
🗸 핸들러에서 URL을 지정하는 방법 1 - path 사용
@Controller
public class Controller01_2 {
@RequestMapping(path = {"/c01_2_h1"})
@ResponseBody
public String handler() {
return "c01_2_h1";
}
🗸 핸들러에서 URL을 지정하는 방법 2 - value 사용
@Controller
public class Controller01_2 {
@RequestMapping(value = {"/c01_2_h2"})
@ResponseBody
public String handler2() {
return "c01_2_h2";
}
🗸 디렉토리 형식으로 지정하는 방법 1 - path, value 생략
@Controller
public class Controller01_2 {
@RequestMapping({"/c01_2/h3"})
@ResponseBody
public String handler3() {
return "/c01_2/h3";
}
🗸 디렉토리 형식으로 지정하는 방법 2 - 중괄호 생략
@Controller
public class Controller01_2 {
@RequestMapping("/c01_2/h4")
@ResponseBody
public String handler4() {
return "/c01_2/h4";
}
🗸 한 개의 RequestHandler에 여러 개의 URL을 매핑하는 방법 - 중괄호 사용
@Controller
public class Controller01_2 {
@RequestMapping({"/c01_2/h5", "/c01_2/h6", "/c01_2/h7"})
@ResponseBody
public String handler5() {
return "/c01_2/h5,h6,h7";
📌 페이지 컨트롤러 만드는 방법 - 기본 URL과 상세 URL을 분리하여 설정하기
@Controller
@RequestMapping("/c01_3") // 핸들러에 적용될 기본 URL을 지정한다.
public class Controller01_3 {
@RequestMapping("/h1") // 기본 URL에 뒤에 붙는 상세 URL. 예) /c01_3/h1
@ResponseBody
public String handler() {
return "h1";
}
@Controller
@RequestMapping("/c01_3") // 핸들러에 적용될 기본 URL을 지정한다.
public class Controller01_3 {
@RequestMapping("h2") // 앞에 /를 붙여도 되고 생략해도 된다. 예) /c01_3/h2
@ResponseBody
public String handler2() {
return "h2";
}
@Controller
@RequestMapping("/c01_3") // 핸들러에 적용될 기본 URL을 지정한다.
public class Controller01_3 {
@RequestMapping({"h3", "h4", "h5"})
@ResponseBody
public String handler3() {
return "h5,h6,h7";
}
'Language > Spring' 카테고리의 다른 글
[IDE] 현직자가 사용하는 이클립스/STS 단축키 (1) | 2022.10.23 |
---|---|
💢 Spring : GET & POST & Cookie (0) | 2021.12.09 |
🔗 Spring : Session (0) | 2021.12.07 |
🌇 Spring : ViewResolver (0) | 2021.12.05 |
📌 Spring : RequestHandler - @ReponseBody (0) | 2021.12.04 |