기록

[튜토리얼] create spring boot project 본문

Web/Spring

[튜토리얼] create spring boot project

youngyin 2022. 8. 22. 08:00

개요

Spring을 배우기 시작하면서, 그 기록을 남겨두고자 한다. 아래는 단순히 프로젝트를 생성하여 서버를 띄우는 과정을 담고 있다.

개발환경

os mac(intel)
java version 1.8
idle intellij

시작하기

1. install intellijs & java

2022.08.10 - [backend] - [환경설정] macOS/install java8

 

[환경설정] macOS/install java8

1. 설치 파일 다운로드 오라클에 로그인하고 나면, 아래처럼 pkg파일을 다운로드 할 수 있다. 2. pkg 파일 설치 3. java version 확인하기 4. java 제거하기 https://www.java.com/ko/download/help/mac_unins..

youngyin.tistory.com

2. create project

프로젝트를 생성한 후에 build.gradle를 수정하고, controller를 생성해야 한다.

  • build.gradle
plugins {
    id 'org.springframework.boot' version '2.7.2'
    id 'io.spring.dependency-management' version '1.0.12.RELEASE'
    id 'java'
}

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

configurations {
    compileOnly {
        extendsFrom annotationProcessor
    }
}

repositories {
    mavenCentral()
}

dependencies {
    implementation 'org.springframework.boot:spring-boot-starter-web'
    compileOnly 'org.projectlombok:lombok'
    developmentOnly 'org.springframework.boot:spring-boot-devtools'
    annotationProcessor 'org.projectlombok:lombok'
    testImplementation 'org.springframework.boot:spring-boot-starter-test'
}

tasks.named('test') {
    useJUnitPlatform()
}
라이브러리 설명
spring-boot-starter-web web application을 만드는 경우 사용
lombok 어노테이션 기반으로 코드를 자동완성해주는 라이브러리
spring-boot-devtools 개발 편의를 위한 모듈(코드가 변경되면 자동으로 어플리케이션 재시작이 포함)
  • controller
package com.example;

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

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

@SpringBootApplication으로 Bean 객체가 관리된다. @SpringBootApplication이 있는 위치부터 component scan이 이루어지기 때문에 해당 프로젝트의 최상단에 위치시켜야 한다.

3. test

localhost:8080으로 접속하면, 다음과 같은 화면을 확인할 수 있다.

제대로 연결되지 않았다면, 위와 같은 화면을 볼 수 있다.

마무리하면서

튜토리얼의 최종목표는 간단한 게시판을 구현하는 것이다. 데이터 베이스와 프로젝트를 연결하여 데이터를 영속화하고, 뷰와 연결하여 데이터를 뿌리는 것까지 진행하고자 한다.

Comments