[Spring] 입문 1-1. 프로젝트 생성

강우엉·2023년 6월 20일

Spring

목록 보기
1/359

💡 필요한 환경 설정

  • Java 11 또는 그 이상 버전
  • IDE (ItelliJ IDEA)

💡 Spring 프로젝트 생성

https://start.spring.io/
위의 사이트는 spring에서 운영하고 있는 사이트이고, 프로젝트를 손쉽게 생성해준다.
세팅화면을 살펴보자.

  • Project 종류
    크게 Maven 과 Gradle 두개로 나뉘고 Gradle에서도 Groovy와 Kotlin으로 나뉜다. Maven, Gradle 이러한 것들이 프로젝트에서 필요한 라이브러리를 가져와주고, 빌드하는 life cycle을 관리하는 툴이다. 현재는 대부분 Gradle 방식을 사용하기 때문에 Gradle - Groovy로 선택을 해준다. Maven 과 Gradle Groovy 와 Kotlin은 다음에 자세하게 다뤄보겠다.

  • Language
    사용할 언어를 선택. 우리는 Java를 사용할 것이다.

  • Spring Boot
    spring boot의 버전을 선택하는 란이다.

  • Project Metadata
    Group란에 기업명 또는 도메인을 넣고 Arifact 란에 빌드할 이름을 설정해주면 된다.

  • Denpendencies
    spring boot에서 가져 올 라이브러리를 선택하는 곳이다.
    우리는 웹 관련 프로젝트를 만들기에 Spring Web과 html 파일을 만들어주는 템플릿 엔진인 Thymeleaf를 추가해준다.

위의 모든 항목을 선택 후 Generate하면 압축파일을 다운받는데, 다운 후에 압축을 풀어주면 된다.

💡 IntelliJ IDEA에서 프로젝트 열기


IntelliJ에서 Open을 누른 후, 압축을 풀었던 폴더에 있는 build.gradle을 선택하여 프로젝트를 열어준다. 외부의 라이브러리들을 다운받기 때문에 네트워크 연결이 필요하고, 일정 시간이 소요될수도 있다.

프로젝트가 성공적으로 생성되었다면 이러한 파일들이 생성된것을 확인 할 수 있다.
간단하게 설명해보자면 src폴더에 maintest로 나뉘어있고 main 안에는 javaresources 폴더로 나누어져있다. java 폴더에는 실제 package와 소스 파일들이, resources에는 그 외의 xml, html 파일 등이 들어간다.

build.gradle을 열어보면 spring boot에 필요한 설정들이 적혀있다.

plugins {
	id 'java'
	id 'org.springframework.boot' version '2.7.12'
	id 'io.spring.dependency-management' version '1.0.15.RELEASE'
}

group = 'hello'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '11' // java 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'
}

tasks.named('test') {
	useJUnitPlatform()
}

💡 Build 하기

intelliJ에서 빌드를 해보자.
HelloSpringApplication 클래스를 열어보면 아래와 같은 소스코드가 있다.

package hello.hellospring;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class HelloSpringApplication {

	public static void main(String[] args) {
		SpringApplication.run(HelloSpringApplication.class, args);
	}

}

이 코드를 run 한 상태에서 localhost:8080에 접속을 해보면 Whitelabel Error Page가 뜨게될텐데 이렇게하면 환경 설정을 모두 마친것이다. 어떠한 방법으로 tomcat 서버가 열리는지 간단히 설명해보자면 main 메서드를 실행하면 Spring.Application.run()에 현재 클래스를 매개변수로 전달하고, Spring boot 어플리케이션이 실행된다. Spring boot는 내부에 tomcat 서버가 내장되어있는데, main 메서드를 실행하면 spring에서 tomcat 서버가 실행되는것이다.

💡 Build 설정

intelliJ가 자체적으로 실행되지않고 gradle을 통해서 실행을 할 때가 있는데, 설정을 통해 gradle 을 통하지않고 빌드 할 수 있다. 이러한 설정을 통해 build 하게 되면 gradle을 거치징 않고 build 하기 때문에 빠른 build가 가능하다.

Settings -> Build, Execution, Deployment -> Gradle 에 접속 후
Build and run using 과 Run test using 항목 두 개를 gradle에서 intelliJ IDEA로 변경

profile
우엉이의 코딩 성장일기💻

0개의 댓글