Back-end/📗 Spring 5

[스프링부트/Spring boot] 스프링 입문 4/4 - API

인프런 강의 "스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술" 정리 스프링 웹 개발 스프링을 이용한 웹 개발은 크게 세 가지로 나뉜다. 정적 컨텐츠 MVC와 템플릿 엔진 API API API는 안드로이드 개발할 때 많이 사용한다. key-value 쌍의 JSON 형식으로 클라이언트에게 전달해준다. @ResponseBody 사용 뷰가 필요하지 않기 때문에 viewResolver 또한 동작하지 않는다. 대신 HttpMessageConverter가 동작한다. body 부분에 내용을 직접 넣어 반환한다. @Controller public class HelloController { @GetMapping("hello-api") @ResponseBody public Hello helloAp..

[스프링부트/Spring boot] 스프링 입문 3/4 - MVC

인프런 강의 "스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술" 정리 스프링 웹 개발 스프링을 이용한 웹 개발은 크게 세 가지로 나뉜다. 정적 컨텐츠 MVC와 템플릿 엔진 API MVC와 템플릿 엔진 템플릿 엔진을 이용하면 정적 컨텐츠와 달리 서버에서 컨텐츠를 동적으로 조금 수정할 수 있다. MVC는 Model, View, Controller의 약자로 디자인패턴 중 하나이다. 사용자가 컨트롤러를 조작하면 컨트롤러는 모델을 통해 데이터를 가져오고, 그 정보를 뷰를 통해 사용자에게 보여준다고 생각하면 된다. Model 백그라운드에서 동작하는 로직 처리 일반적으로 데이터베이스 테이블과 대응 View 사용자가 보게 될 결과 화면 html / css / javascript 등을 모아둔 컨..

[스프링부트/Spring boot] 스프링 입문 2/4 - 정적 컨텐츠

인프런 강의 "스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술" 정리 스프링 웹 개발 스프링을 이용한 웹 개발은 크게 세 가지로 나뉜다. 정적 컨텐츠 MVC와 템플릿 엔진 API 정적 컨텐츠 HTML 파일을 그대로 웹 브라우저에게 쏴주는 방식이다. 스프링 컨테이너는 스프링 부트 내 injection을 이용하여 객체를 관리하는 컨테이너다. 클라이언트(웹 브라우저)가 요청한 내용과 관련된 Controller가 스프링 컨테이너에 존재하지 않는다면 톰캣 서버는 자체적으로 정적 컨텐츠를 찾아 반환해준다. 그래서 아래 도메인처럼 html 확장자가 따라 붙는다. https://localhost:8080/index.html

[스프링부트/Spring boot] 스프링 입문 1/4 - 환경 설정

인프런 강의 "스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술" 정리 프로젝트 환경설정 프로젝트 생성 스프링부트 스타터 사이트에서 쉽게 스프링 프로젝트 생성할 수 있다. Project Maven : 설정 파일로 xml 사용, 쓰지 않는 추세 Gradle : Groovy 언어 사용, 훨씬 간결한 코드 Language Java Spring Boot 2.4.1x Project Metadata Group : domain name Artifact : project name Packaging : Jar Java : 11 Dependency 어떤 라이브러리를 가져와 쓸지 라이브러리 기존에 사용하기 어려웠던 스프링이 톰캣 웹 서버를 내장한 스프링 부트가 나오면서 굉장히 개발 친화적으로 변했다...