관리 메뉴

거니의 velog

(6) 그레이들 이용해 스프링 부트 실습하기 본문

Java_Spring Boot

(6) 그레이들 이용해 스프링 부트 실습하기

Unlimited00 2023. 11. 27. 21:33

* 이번에는 메이븐의 단점을 보완해서 나온 최신 빌드 도구인 그레이들(Gradle)을 이용해 스프링 부트를 실습해 보자.

* 그레이들의 특징은 다음과 같다.

- 메이븐이 XML 기반의 정적인 빌드를 제공했다면, 그레이들은 그루비(groovy)스크립트 기반의 동적인
  빌드 기능을 제공한다.
  
- 메이븐보다 빌드 작업이 간단하며 프로그래밍만으로 기능을 추가할 수 있다.

(1) 그레이들 설치하기

* STS에서 그레이들을 사용하려면 그레이들 플러그인을 설치해야 한다.

1. www.gradle.org   에 접속하여 Install Gradle을 클릭한다.

www.gradle.org  

 

Gradle Build Tool

Accelerate developer productivity. Gradle helps teams build, automate and deliver better software, faster.

gradle.org

2. 화면 중간에 있는 Install manually로 이동하여 Download를 클릭한다.

https://gradle.org/install/#manually

 

Gradle | Installation

Install the Gradle build tool on Linux, macOS or Windows, either manually or using a package manager like SDKMAN! or Homebrew.

gradle.org

3. v4.10.2의 binary-only를 클릭해 다운로드한다.

4. 다운로드한 후 파일의 압축을 푼다.

5. 압축을 푼 폴더로 이동한 후 gradle-4.10.2 폴더를 복사해 C 드라이브의 spring 폴더에 붙여 넣는다.

6. gradle-4.10.2 폴더로 이동한 후 해당 경로를 복사한다.

C:\spring\gradle-4.10.2

7. 윈도 탐색기의 내 PC에서 마우스 오른쪽 버튼을 클릭한 후 속성 > 고급 시스템 설정 > 환경 변수를 클릭해 다음과 같이 그레이들 환경 변수를 설정한다.

8. 다음과 같이 환경 변수가 생성된 것을 확인할 수 있다.

9. 이번에는 환경 변수 Path를 선택한다.

10. 새로 만들기를 클릭해 그레이들의 bin 폴더 경로를 다음과 같이 설정하고 확인을 클릭한다.

11. 정상적으로 동작하는지 명령 프롬프트를 열고 gradel -v 명령어를 입력한다. 다음과 같이 그레이들 버전이 나오면 성공이다!


(2) 그레이들 플러그인 설치하기

* STS에서 그레이들을 사용하려면 플러그인을 따로 설치해야 한다. 다음은 플러그인 설치 과정이다.

1. 메뉴에서 Help > Eclipse Marketplace... 를 선택한 후 검색창에서 gradle support를 입력하고 Go를 클릭해 검색한다.

2. 조회 결과가 나오면 Buildship Gradle Integration 의 install을 클릭한다.

3. 사용권에 동의한다고 체크한 후 Finish를 클릭해 설치를 완료한다.

4. 설치를 마친 후 STS를 재실행한다.


(3) 그레이들 기반 스프링 부트 프로젝트 만들기

* 먼저 그레이들 기반 스프링 부트 프로젝트를 생성한다.

1. 메뉴에서 File > New > Spring Starter Project를 선택한 후 name을 myboot2로 입력하고 Type을 Gradle로 설정하여 그레이들 기반 스프링 부트 프로젝트를 생성한다.

2. 다음과 같이 자주 사용하는 항목(H2, JDBC, Web)에 체크한 후 Finish를 클릭한다.

3. 이름이 myboot02인 프로젝트가 생성된 것을 확인할 수 있다.


(4) JSP 이용해 웹 페이지 나타내기

* 이번에는 그레이들을 이용해 hello.jsp를 나타내 보자. 그레이들 기반 프로젝트는 pom.xml에 설정하는 것이 아니라 build.gradle에 설정한다.

1. build.gradle을 다음과 같이 작성한다.

buildscript {
	ext {
		springBootVersion = '2.0.6.RELEASE'
	}
	repositories {
		mavenCentral()
	}
	dependencies {
		classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
	}
}

apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'org.springframework.boot'
apply plugin: 'io.spring.dependency-management'

group = 'com.myboot02'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = 1.8

repositories {
	mavenCentral()
}

dependencies {
	implementation('org.springframework.boot:spring-boot-starter-jdbc')
	implementation('org.springframework.boot:spring-boot-starter-web')
	implementation('org.apache.tomcat.embed:tomcat-embed-jasper') // 톰캣으로 실행하기 위해 설정한다.
    implementation('javax.servlet:jstl:1.2') // JSP를 사용하기 위해 설정한다.
	runtimeOnly('com.h2database:h2')
	testImplementation('org.springframework.boot:spring-boot-starter-test')
}

2. 설정 후 프로젝트 이름 위에서 마우스 오른쪽 버튼을 클릭한 후 Gradle > Refresh Gradle Project 를 선택해 설정한 라이브러리를 다운로드한다.

3. application.properties 를 다음과 같이 설정한다.

#Server
server.port=8090
server.session.timeout=360000

#Spring MVC
spring.mvc.view.prefix=/WEB-INF/views/
spring.mvc.view.suffix=.jsp

#한글 인코딩 설정
server.servlet.encoding.charset=UTF-8  
server.servlet.encoding.enabled=true  
server.servlet.encoding.force=true

4. 자바 클래스는 앞에서 사용한 myboot01 프로젝트를 만들 때 사용한 DemoController.java 파일을 복사해 그대로 사용한다.

5. src/main/wrbapp/WEB-INF/views 폴더를 만든 후 마찬가지로 앞 절에서 사용한 hello.jsp를 복사해 붙여 넣는다.

6. 프로젝트 이름 위에서 마우스 오른쪽 버튼을 클릭한 후 Run As > Spring Boot App을 선택해 실행한다. 그리고 브라우저에서 다음의 주소로 요청한다.

- http://localhost:8090/hello.do