본문 바로가기

국비필기노트/Spring

Spring_SpringBoot Framework와 초기세팅

SpringBoot Framework란?

 

뼈대나 근간을 이루는 코드들의 묶음이다.

현업에서 사용하는 가장 최신 기술로서, jsp -> thymeleaf / mybatis -> jpa 로 변경된다.

프로그램의 기본 흐름이나 구조를 정하고, 이 구조에 자신의 코드를 추가하는 방식으로 개발할 수 있도록 하는 프로그래밍의 기본틀을 의미한다.

개발에 필요한 구조가 제공되고, 여기에 필요한 부분을 조립하는 형태로 개발이 진행된다.

 

 

라이브러리란?

 

라이브러리는 자주 사용되는 로직을 재사용하기 편리하도록 잘 정리한 일련의 코드들의 집합이다.

 

 

Framework vs 라이브러리

 

프레임워크는 자동차의 프레임 즉, 기본적으로 구성하고 있는 뼈대를 말한다. 

라이브러리는 자동차의 기능을 하는 부품을 의미한다.

 

한번 정해진 자동차의 프레임은 바꿀 수 없다(Framework).

소형차를 만들기 위해 뼈대를 사용하는데 이 뼈대로 SUV를 만들 수는 없다는 것이다. 

그러나 바퀴나 헤드라이트 등은 비교적 다른 종류로 쉽게 바뀔 수 있다(라이브러리).

 

 

 Spring이란?

 

스프링 프레임워크는 자바 플랫폼을 위한 오픈소스 어플리케이션 프레임워크로서 간단히 Spring이라고한다.

동적인 웹사이트를 개발하기 위한 여러가지 서비스를 제공한다.

 

 

Spring 사이트

 

https://spring.io/

 

Spring makes Java simple.

Level up your Java code and explore what Spring can do for you.

spring.io

 

 

STS Tool 다운로드

 

https://github.com/spring-projects/toolsuite-distribution/wiki/Spring-Tool-Suite-3

 

GitHub - spring-projects/toolsuite-distribution: the distribution build for the Spring Tool Suite and the Groovy/Grails Tool Sui

the distribution build for the Spring Tool Suite and the Groovy/Grails Tool Suite - GitHub - spring-projects/toolsuite-distribution: the distribution build for the Spring Tool Suite and the Groovy/...

github.com

 

 

해당 사이트에 들어가서 

 

 

 

 

알집 다운로드

 

https://www.oracle.com/java/technologies/downloads/#java11-windows

 

STS는 자바 11이 반드시 설치되어있어야한다.

해당 사이트에 들어가서 java11설치

 

 

설치 후 환경변수로 들어가서 java11을 가장 우선적으로 사용할 것이니 새로만들기로 11 경로를 입력해준 후 위로이동을 클릭하여 가장 상단으로 위치시켜준다.

 

cmd로 확인한 java -version

 

 

STS에서 프로젝트 생성하기

 

 

https://start.spring.io/

 

STS는 위 사이트에 들어가서 바로 스프링부트 프로젝트를 생성할 수 있다.

 

 

Project는 사용할 필드 툴(Maven/Gradle)을 선택한다. 

Maven, Fradle은 프로젝트에 필요한 의존성을 관리하는 빌드이다. 

즉, Maven과 Gradle의 라이프 사이클을 관리해주는 툴로서 동일한 역할을 하며 과거에는 Maven을, 최근에는 Gradle을 사용한다. 

 

이 둘의 차이점은 Maven은 XML파일로 되어있어서 태그식이고 이름과 버전에 대한 부분을 정확하게 찾아서 기입을 해주어야하는 반면, Gradle은 이름만 넣어주면 현재 나의 시스템에 필요한 라이브러리 버전까지 알아서 찾아온다.

 

 

Java뿐만 아니라 다른 언어로 Spring Boot를 사용할 수 있다. 

 

 

스프링부트의 어떤 버전을 사용할 것인가에대한 선택이다.

SNAPSHOP이 붙은 것은 현재 개발중인 버전, M3가 붙은 것은 Minor의 약자로 정식 릴리즈 되지 않은 버전이라는 뜻이다. 즉, 아직 개발중이더라도 가장 신규버전을 사용하고 싶다면 SNAPSHOP 을 사용하면된다. 

그리고 아무것도 붙어있지 않은 것은 정식 릴리즈 된 버전이다. 따라서 정식 릴리즈된 버전 중 가장 최신 버전을 선택하는 것이 좋다. 

 

 

 

프로젝트 메타데이터는 프로젝트의 간단한 정보를 나타내는 것이다. 

Group은 기업의 도메인

Artifact는 빌드 결과물 즉, 프로젝트 명이다.

 

 

 

Dependenies는 JSP에서 하나하나 다운받고 Build Path를 설정해주어야했던 Jar파일들을 ADD를 통해 프로젝트를 생성하면서 바로 추가할 수 있다. 

 

 

 

클릭하면 파일이 다운로드되는데 해당 압축파일을 워크스페이스 폴더로가서 풀어준다.

 

 

 

그리고 STS에서 Existing Gradle Project를 클릭하여 임포트해준다.