Back-end/Spring

spring boot 프로젝트 생성

calvin9150 2021. 3. 12. 09:52

https://start.spring.io/

Maven 과 Gradle : Maven은 레거시 프로젝트에서 사용하는 느낌.. 최근엔 Gradle을 사용하는 경우가 많다고 한다.

 

* Gradle이 Maven보다 좋은점
Build라는 동적인 요소를 XML로 정의하기에는 어려운 부분이 많다.
설정 내용이 길어지고 가독성 떨어짐
의존관계가 복잡한 프로젝트 설정하기에는 부적절
상속구조를 이용한 멀티 모듈 구현
특정 설정을 소수의 모듈에서 공유하기 위해서는 부모 프로젝트를 생성하여 상속하게 해야함 (상속의 단점 생김)


*Gradle은 그루비를 사용하기 때문에, 동적인 빌드는 Groovy 스크립트로 플러그인을 호출하거나 직접 코드를 짜면 된다.
Configuration Injection 방식을 사용해서 공통 모듈을 상속해서 사용하는 단점을 커버했다.
설정 주입시 프로젝트의 조건을 체크할 수 있어서 프로젝트별로 주입되는 설정을 다르게 할 수 있다.

 

 

Artifact : 빌드 후 결과물의 일종 (프로젝트명 이라고 보면 된다고 한다.)

ADD DEPENDENCIES : 프로젝트 진행하면서 어떤 라이브러리를 갖다 쓸건지 설정.
 
TEMPLATE ENGINE : 템플릿 양식과 특정 데이터 모델에 따른 자료를 합성해서 결과 문서를 출력하는 소프트웨어.

 

 

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
// build.gradle 파일

plugins {
    id 'org.springframework.boot' version '2.3.9.RELEASE'
    id 'io.spring.dependency-management' version '1.0.11.RELEASE'
    id 'java'
}
 
group = 'hello'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '11'
 
repositories {
    mavenCentral()
}
 
dependencies {
    implementation 'org.springframework.boot:spring-boot-starter-thymeleaf'
    implementation 'org.springframework.boot:spring-boot-starter-web'
    testImplementation('org.springframework.boot:spring-boot-starter-test') {
        exclude group: 'org.junit.vintage', module: 'junit-vintage-engine'
    }
}
 
test {
    useJUnitPlatform()
}
 
cs

plugins : Gradle 쪽 내용

 

sourceCompatibility : java 버전

 

repositories {mavenCentral()} : 밑 dependencies 를 mavenCentral 이라는 곳에서 다운로드 받는다 라는 뜻

 

'Back-end > Spring' 카테고리의 다른 글

회원 관리 프로그램 (MVC구조, Test메서드 체험)  (0) 2021.03.13
Spring 웹 개발 방식 3가지  (0) 2021.03.13
프로젝트 생성  (0) 2021.03.11