반응형
스프링 - 웹 개발 기초
참고 강의: 스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술(김영한,인프런)
정적 컨텐츠
- 스프링 부트 정적 컨텐츠 기능
- 파일을 그대로 웹 브라우저에 보여주는 것
- docs.spring.io에서 static content 검색 : http://docs.spring.io/spring-boot/docs/2.3.1.RELEASE/reference/html/spring-boot-features.html#boot-features-spring-mvc-static-content
동작 확인 : (실행) http://localhost:080/hello-static.html
MVC와 템플릿 엔진
- MVC : Model, View, Controller
- ex) JSP
- 예전에는 V+C의 형태가 많았음(합쳐진 형태), 지금은 V와 C를 분리해서 사용
- View : 화면 그리기
- Controller : 비즈니스 로직 / 백단
- @GetMapping("") : xxx/경로 부분의 이름이 들어오게 됨. ex) 8080/hello-mvc
- @RequestParam("") : 파라미터 값/ url뒤에 들어오는 값(get형식) ex) 8080/hello-mvc?name=spring
- return "" : View에서 해당 이름의 반환된 .html파일을 찾아 보여줌
동작 확인 : (실행) http://localhost:8080/hello-mvc?name=spring
정적 컨텐츠와 달리 controller가 있음
API
- json 포맷 구조로 데이터 전달
- ex) view.js, React.js, 서버끼리 통신 할 때
- @ResponseBody : HTTP에서 body부분에 이 데이터를 직접 넣어주겠다는 의미
- @ResponseBody를 사용하고, 객체를 반환하면 객체가 JSON으로 변환됨
- 요즘 거의 기본으로 json 반환 방식을 사용
동작 확인 : (실행) http://localhost:8080/hello-api?name=spring
@ResponseBody 를 사용
- HTTP의 BODY에 문자 내용을 직접 반환
- viewResolver 대신에 HttpMessageConverter가 동작
- 기본 문자처리 : StringHttpMessageConverter
- 기본 객체처리 : MappingJackson2HttpMessageConverter
- byte 처리 등등 기타 여러 HttpMessageConverter가 기본으로 등록되어 있음
* 클라이언트의 HTTP Accept 헤더와 서버의 컨트롤러 반환 타이 정보 둘을 조합해서 HttpMessageConverter가 선택됨
반응형
'Web > Spring' 카테고리의 다른 글
[Spring] 회원 관리 예제 - 웹 MVC 개발 (0) | 2022.11.03 |
---|---|
[Spring] 스프링 빈과 의존관계 (0) | 2022.11.02 |
[Spring] 회원 관리 예제 - 백엔드 개발 (0) | 2022.10.31 |
[맥os] 단축키 (0) | 2022.10.26 |
[Spring] 프로젝트 환경설정 (0) | 2022.10.24 |
댓글