Notice
Recent Posts
Recent Comments
«   2024/10   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
10-11 00:15
Archives
Today
Total
관리 메뉴

Developer_Neo

Spring - 프로젝트 생성(with 스프링 부트 스타터 사이트) 본문

Spring

Spring - 프로젝트 생성(with 스프링 부트 스타터 사이트)

_Neo_ 2022. 8. 1. 21:53
반응형

https://start.spring.io/

위의 링크가 스프링 부트 스타터 사이트이다. 이것은 스프링 부트 기반으로 스프링 관련 프로젝트를 만들어주는 사이트이다.

 

 

스프링 부트 스타터 사이트

 

Maven과 Gradle

- 둘다 대표적인 빌드 관리 툴이다.

빌드 관리 툴이란?
- 프로젝트에서 필요한 xml, properties, jar 파일들을 자동으로 인식하여 빌드해주는 도구
- 빌드 자동화를 수행해 실행가능한 프로그램으로 바꿔주는 도구
즉, 코드를 컴파일해서 binary code로 만들고, 패키징하고 코드를 테스트하여 실행가능한 프로그램이 나오기 까지의 과정(빌드)을 자동화하는 것을 수행하여 실행가능한 프로그램으로 바꾸어 준다는 것이다.

옛날에 라이브러리를 사용하기 위해서는 수동으로 다운받아서 해야했다고 한다.

빌드 관리 도구를 사용하는 주된 목적은 외부 라이브러리를 종속성 여부로 판단하여 자동으로 다운로드 및 업데이트, 관리 해주기 때문이다.

1. 종속성 다운로드
2. 소스코드를 바이너리코드로 컴파일
3. 바이너리 코드를 패키징
4. 테스트 실행
5. 프로덕션 시스템에 배포
이런 것들을 해준다고 보면 된다.
Maven이란?
- 자바의 관리 도구였던 Ant를 대체 하기 위해 개발된 것
- pom.xml 파일로 외부 라이브러리를 쉽게 참조할 수 있게 명시했으며, 외부 라이브러리에 연관된 다른 라이브러리도 자동으로 관리 되었다. (편하게 Dependency 관리 )(자동으로 라이브러리 관리)
- 라이프 사이클 도입 (clean, install 사용 가능..)
- 대규모 프로젝트에서 xml형태의 파일은 Dom 형태로 태그들이 생겨나서 점점 단계가 많아져서 관리가 어려워진다.


Ant
- 빌드의 기능만 가지고 있어 나머지 외부라이브러리 관리 및 다운로드, 업데이트를 개발자가 해주어야했다.
- 라이프 사이클 X 

Gradle이란?
- Maven에 비해 더 빠른 처리속도를 가지고 있다.(약 100배정도)
- 안드로이드 프로젝트의 표준 빌드 시스템
- Groovy스크립트를 활용한 빌드 관리 도구
- 대규모 프로젝트에서의 성능이 좋다.
- build.gradle파일 사용
- 설치 없이 사용가능하다.


 

[Tip] 레거시 프로젝트에 많이 쓰여왔던 것이 Maven이고, 현재에 많이 쓰이는 것은 Gradle이라고 한다.

 

 

Project Metadata

1. Group 

 - 보통 기업의 도메인 명을 적는다.

2. Artifact

 - 빌드된 결과물이다.(프로젝트 명)

...

 

스프링 Dependency 설정

위의 것은 스프링 부트 스타터 사이트의 오른쪽의 ADD DEPENDENCIES를 누르면 나온다.

 

추가할 것을 추가하면

의존성 추가


generate

 

위의 화면인 스프링 부트 스타터 사이트의 하단 쪽 GENERATE를 클릭하면 프로젝트가 다운로드가 된다.

 

그리고 인텔리제이에서 main파일에 있는 걸 구동시킨 후 localhost:8080을 웹페이지 URI에 입력하면 밑과 같이 뜨면 성공이다.

성공

 

 

 

위와 같이 되어 있는 걸 실행하면 Tomcat이나 웹서버를 내장하고 있어 자체적으로 띄우면서 spring boot가 띄어진다.

 

 

 

반응형
Comments