본문 바로가기
뒤끝 (Back-End)

[Spring boot] 프로젝트 기본 세팅 및 초기 실행

728x90

개발환경

- Java 버전 : openjdk version "17.0.2"

- IntelliJ 버전 : IntelliJ IDEA Community 2023.03.06

- 계속해서 수정 예정

 

 

 

spring initializr을 통해 spring boot 프로젝트 생성

 

https://start.spring.io/

 

*Dependencies는 추후에 계속해서 추가 예정

 

 

인텔리제이에서 파일 실행 후 초기 설정

 

  • Setting > Build, Execution, Deployment > Gradle > Gradle Projects에서 Build and run using이랑 Run tests using이 IntelliJ IDEA로 설정되어 있는지 확인
  • Project Setting에서 Java SDK 버전과 Gradle에서 Gradle JVM Java 버전 같은지 확인

 

스프링 부트 기본 구조

 

main - 실제 코드를 작성하는 공간

test - 프로젝터의 소스 코드를 테스트할 목적의 코드나 리소스 파일이 들어 있음

build.gradle - 빌드를 설정하는 파일, 의존성이나 플러그인 설정등 빌드에 필요한 설정 파일

settings.gradle - 빌드할 프로젝트의 정보를 설정하는 파일

 

컨트롤러와 인덱스 추가

 

 

HomeController.java

package com.example.springtest.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

@Controller
public class HomeController {
    @RequestMapping(value = "/main")
    public String main()
    {
        return "index.html";
    }
}

 

 

SpringtestApplication.java

package com.example.springtest;

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

@SpringBootApplication
public class SpringtestApplication {

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

}

 

 

index.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Main</title>
</head>
<body>
    <h2> 스프링 부트 테스트 첫 화면 입니다.</h2>
</body>
</html>

 

 

build.gradle

plugins {
	id 'java'
	id 'org.springframework.boot' version '3.1.10'
	id 'io.spring.dependency-management' version '1.1.4'
}

group = 'com.example'
version = '0.0.1-SNAPSHOT'

java {
	sourceCompatibility = '17'
}

repositories {
	mavenCentral()
}

dependencies {
	implementation 'org.springframework.boot:spring-boot-starter-web'
	testImplementation 'org.springframework.boot:spring-boot-starter-test'
}

tasks.named('bootBuildImage') {
	builder = 'paketobuildpacks/builder-jammy-base:latest'
}

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

 

 

실행 화면

728x90