본문 바로가기
뉴렉처 과정 기록 (Backend)/Spring

06/01 Spring Boot 프로젝트 생성, 라이브러리 설정

by yeonee3219 2021. 6. 1.

스프링스타터 프로젝트를 메이븐 기반으로 만들기

 

 

 

 

 

 

 

 

 

 

 

스프링 프레임워크에서

 

1. 톰캣으로부터 해방되게

2. 라이브러리 설정 쉽게 메이븐이나 그래들의 도움을 받은(큰 묶음단위)

3. 설정쉽게 해서 간편하게

 

-> 정리된 방식으로 한 것이

 

=> 스프링 부트 

 

스프링을 쓰려면 

 

얹어져야만 쓸 수 있었는데  스프링 부트가 다해줌

 

 

 

 

 

스프링 부트의 특징

 

 

1. WAS 내장

2. 라이브러리 스타터 제공

 

 

 

 

 

 

 

 

 

 

 

 

컨트롤러 만들고

 

 

 

 

메이븐 스프링 스프링 부트의 역할이 경계가 애매하다

 

-> 어떻게 다르지

 

폼파일안의 내용이 메이븐이 일하게 만드는 지시사항들임

 

 

dependency / build / properties 의 내용이 가장 중요한데,

 

dependency

build 

properties (플러그인 or dependency가 사용하는 변수, 전역변수의 개념)

 

 

 

 

 

 

 

과거에는 jsp를 이용해서 view단을 처리했는데 스트링부트에서는 톰캣관련 설정할 수 없으니 jsp도 못씀

 

홈디렉토리가 이렇게 세가지가 됨

static : 서버코드가 들어가지 않는 파일들을 전문으로 두는 root

 

-> 위 사진처럼 세 디렉토리에 세 가지의 html 파일을 놔봤다

 

 

static과 wepapp (타임리프) 디렉토리에 넣은 파일들은 잘 보이는 것을 확인할 수 있고

 

templates는 아직 설정이 안되서 에러나는 것

 

 

 

 

 

 

메이븐은 빌드업 과정 도와주고

 

스프링은 라이브러리 (설정을 쉽게 하게 해주는 어노테이션을 지원)

-> 요청이 들어오면 그 url에 맞는 것을 실행하도록 도와주는 것 /

    그 url에 맞는 클래스가 뭔지 (어디에있는지) 알려주기 위해 그 설정파일을 구성설정해줘야 함

 

스프링부트는 그 설정(어디에 있는지)을 할 필요없게 해줌

 

 

 

 

 

 

 

 

HomeController 안에 모든 컨트롤러 에 들어갈 함수들을 넣을 건데

 

프로젝트가 커서 구분해야 하는 일이 생기면

 

아래와 같이 나눠서 컨트롤러를 분리해주면 되겠다

 

 

 

이름이 겹치는 부분은

한폴더 더 들어가는 것에 저렇게 이름 붙여주면 됨

 

 

 

 

 

 

 

 

 

 

데이터를 받는 것은 , Restful API

rest는 서버쪽에 있는 데이터를 객체화하는 것 

객체가 가지고 있는 값들을 데이터를 전달하기 위한 표현식을 가지고 있는 제공방식

 

문서를  제공하는 것은 그냥 @Controller

 

 

 

 

@RestController로했을 경우

 

 

객체의 데이터를 알아서 json 형태로 바꿔서 출력해줌