오늘한일
- spring 공부
Spring MVC란 무엇일까?
- MVC란 Model-View-Controller의 약자로, 소프트웨어 디자인 패턴 중 하나입니다.
- MVC 패턴은 소프트웨어를 구성하는 요소들을 Model, View, Controller로 구분하여 각각의 역할을 분리합니다.
Model
- 데이터와 비즈니스 로직을 담당합니다.
- 데이터베이스와 연동하여 데이터를 저장하고 불러오는 등의 작업을 수행합니다.
View
- 사용자 인터페이스를 담당합니다.
- 사용자가 보는 화면과 버튼, 폼 등을 디자인하고 구현합니다.
Controller
- Model과 View 사이의 상호작용을 조정하고 제어합니다.
- 사용자의 입력을 받아 Model에 전달하고, Model의 결과를 바탕으로 View를 업데이트합니다.
Controller 이해하기
@Controller
@Controller
public class HelloController {
@GetMapping("/api/hello")
@ResponseBody
public String hello() {
return "Hello World!";
}
}
@Controller는 해당 클래스가 Controller의 역할을 수행할 수 있도록 등록해줄 수 있습니다.
@GET, @POST, @PUT, @DELETE
- 각각의 HTTP Method에 매핑되는 애너테이션입니다.
@GET
@GetMapping("/api/get")
@ResponseBody
public String get() {
return "GET Method 요청";
}
@POST
@PostMapping("/api/post")
@ResponseBody
public String post() {
return "POST Method 요청";
}
@PUT
@PutMapping("/api/put")
@ResponseBody
public String put() {
return "PUT Method 요청";
}
@DELETE
@DeleteMapping("/api/delete")
@ResponseBody
public String delete() {
return "DELETE Method 요청";
}
@RequestMapping
@RequestMapping은 중복되는 URL를 단축시켜줄 수 있습니다.
@Controller
@RequestMapping("/api")
public class HelloController {
@GetMapping("/hello")
@ResponseBody
public String hello() {
return "Hello World!";
}
@GetMapping("/get")
@ResponseBody
public String get() {
return "GET Method 요청";
}
@PostMapping("/post")
@ResponseBody
public String post() {
return "POST Method 요청";
}
@PutMapping("/put")
@ResponseBody
public String put() {
return "PUT Method 요청";
}
@DeleteMapping("/delete")
@ResponseBody
public String delete() {
return "DELETE Method 요청";
}
}
느낀점
- Spring MVC는 효율적인 API 처리를 위해 Front Controller 패턴을 만들어진것 같다.
'TIL' 카테고리의 다른 글
231106_TIL (0) | 2023.11.06 |
---|---|
231102_TIL (1) | 2023.11.02 |
231031_TIL (0) | 2023.10.31 |
231030_TIL (0) | 2023.10.30 |
231026_TIL (0) | 2023.10.27 |