스프링부트로 웹 서비스 출시하기 - 01

이유석·2023년 2월 9일
1
post-thumbnail

백엔드 개발자로 진로를 정하고 나서, 항상 서비스를 처음(프로젝트 생성)부터 끝(자동 배포)까지 전체적인 흐름에 대해서 공부를 해야겠다고 생각을 했습니다.
마침 따라하기 좋은 자료를 발견하여, 이를 따라하면서 자동 배포를 적용한 웹 서비스를 개발해보았습니다.
개발 과정에서 획득한 지식과 부딪힌 에러 및 해결 방법에 관해서 순서대로 정리해보겠습니다.

프로젝트 설명

개발 기간

  • Jan 17, 2023 ~ Feb 7, 2023

git-hub 주소

프로젝트 구조

01. SpringBoot & Gradle 프로젝트 생성 및 git-hub repository 연동

자료 링크

개발 환경

  • OS : Mac OS
  • IDE : IntelliJ IDEA Ultimate

SpringBoot & Gradle 프로젝트 생성

  • Spring Initializr를 통하여 프로젝트를 생성합니다.

    Spring Initializr : Spring 에서 제공하는 웹사이트를 통하여 Spring 프로젝트를 생성할 수 있는 방법입니다.

프로젝트 구조

  • Project : Gradle - kotlin
  • Language : java
  • Spring Boot : 2.7.7

Project Metadata

  • Group : com.example
  • Artifact : spring-webservice
  • Packaging : Jar
  • Java : 11

Dependencies

  • Spring Web
  • Spring Data JPA
  • Spring Boot Actuator
  • Lombok
  • H2 Database
  • Actuator : 스프링 부트 애플리케이션의 모니터링이나 매트릭(metric)과 같은 기능을 HTTP와 JMX 엔드포인트를 통해 제공한다.
  • Lombok : 자바 라이브러리로 반복되는 getter, setter, toString .. 등의 반복 메서드 작성 코드를 줄여주는 코드 다이어트 라이브러리입니다.
  • H2 Database : 자바 기반의 오픈소스 관계형 데이터베이스 관리 시스템(RDBMS)입니다.
    스프링 부트가 지원하는 인메모리 형태의 데이터베이스 입니다.

이후 자동 생성된 spring-webservice 패키지 명을 webservice로 변경합니다.

간단한 REST API 호출 컨트롤러를 생성하여 테스트 해봅니다.

@RestController
public class WebRestController {

    @GetMapping("/hello")
    public String hello() {
        return "HelloWorld";
    }
}

Spring 프로젝트를 실행하여 localhost:8080/hello에 접속하면 아래와 같은 페이지를 볼 수 있습니다.

git-hub repository 연동

  1. 터미널을 이용하여 연결하고자 하는 프로젝트 폴더로 이동 후 git init 명령어를 통해서, git 초기화

  1. git-hub repository 생성
    • Add .gitignore 속성의 template을 Java 로 선택하여 줍니다.

  1. repository 연결

    • 아래의 명령어를 통해서 로컬 프로젝트와 git repository 를 연결하여 줍니다.
git remote add origin 'git repository 주소'
  1. 새 repository에서 내용을 pull 받음으로써 git history를 동기화
git pull origin main
  1. 새 repository에 파일을 업로드 하기 위해 스테이지에 파일 올림
    • git add . 은 모든 파일을 스테이지에 올린다는 뜻
git add .
  1. 최초 커밋
git commit -m "first commit"
profile
https://github.com/yuseogi0218

0개의 댓글