스프링 웹 개발 기초
2023. 12. 19. 14:19
728x90
웹 개발?
1) 정적 컨텐츠
2) MVC와 템플릿 엔진
3) API > JSON 형태로 내려주는 것
1) 정적 컨텐츠
2) MVC와 템플릿 엔진
MVC? : Model - View - Controller
@GetMapping("hello-mvc")
public String helloMvc(@RequestParam("name") String name, Model model) {
model.addAttribute("name", name);
return "hello-templates";
}
3) API
@ResponseBody : 응답 바디부에 이 데이터를 직접 넣어주겠다는 뜻
@GetMapping("hello-string")
@ResponseBody
public String helloSTring(@RequestParam("name") String name) {
return "hello "+name;
}
>> 글자 그대로 출력 (html 거치지 않고)
@GetMapping("hello-api")
@ResponseBody
public Hello helloApi(@RequestParam("name") String name) {
Hello hello = new Hello();
hello.setName(name);
return hello; // 객체를 리턴
}
static class Hello {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
} // 객체를 만들어 주었다.
>> 결과가 JSON 형태로 나온다.
> @ResponseBody로 들어오면
- HTTP의 BODY에 문자 내용을 직접 반환
- ViewResolver 대신에 HttpMessageConverter가 동작!
- 기본 문자처리 ~> StringHttpMessageConverter
- 기본 객체처리 ~> MappingJackson2HttpMessageConverter 에서 >> JSON 스타일로 바꿔서 화면에 보여줌~
728x90
'Programming > 김영한 스프링 강의' 카테고리의 다른 글
why Spring Boot? (0) | 2024.04.11 |
---|---|
스프링 빈을 등록하는 방법(컴포넌트 스캔/자바 코드로 등록) (0) | 2023.12.27 |
의존성이 주입되는 과정... (1) | 2023.12.27 |
스프링 그리고 빌드 (0) | 2023.12.18 |