[인프런 워밍업 클럽 1기/BE] 세번째 발자국
인프런 워밍업 클럽1기 세번째 회고록
Day11: 기본적인 배포를 위한 준비
Day12: AWS와 EC2 배포
Day13: Spring Boot 설정, 버전업
Day14: 마무리
[Day11] 기본적인 배포를 위한 준비
https://warp-fig-837.notion.site/Day11-847e0e87085d4dd897d3b38924dc9dd3?pvs=4
배포가 무엇인지 이해하고, 배포를 하기 위한 준비 과정 중 profile
설정과 git/github
에 대해 배울 수 있었다. 앞서 작성한 library application 코드에 profile
을 적용해 local profile에서는 h2 DB
를 , dev 환경에서는 MySQL
을 사용하도록 설정할 수 있었다.
배포란 무엇인가?
최종 사용자에게 SW를 전달하는 과정
= 전용 컴퓨터에 우리의 서버를 옮겨 실행시키는 것
전용 컴퓨터에 코드를 옮기고 필요한 프로그램을 설치해 최종 사용자가 접속할 수 있도록 한다.
profile
동일한 서버 코드를 실행시키지만 실행 설정을 다르게 하고 싶을 때 profile을 사용한다
git
과 github
git
코드를 쉽게 관리할 수 있도록 해주는 버전 관리 프로그램
github
git
으로 관리되는 프로젝트의 코드가 저장되는 저장소
[Day12] AWS와 EC2 배포
AWS의 EC2를 이용해 서버를 배포하는 방법을 배울 수 있었다. 이전에 배포를 해보고 싶어서 AWS의 EC2를 사용해본 적이 있었는데, 무엇을 해야 하는지 여러 블로그를 참고해가며 진행하느라 시간이 오래 걸렸었다. 이번 강의를 통해 EC2 배포를 따라해보며 손쉽게 정돈된 절차를 익힐 수 있어서 유익했다.
[Day13] Spring Boot 설정, 버전 업
https://warp-fig-837.notion.site/Day13-Spring-Boot-cc0fc9ac855546d591b4c4a1ff4d2ab9?pvs=4
스프링과 스프링 부트는 무엇이 다른지 관계를 알아보았다. 그리고 스프링부트의 build.grale
, application.yml
파일이 무엇이고, 어떤 역할을 하는지 문구를 하나씩 살펴보았다. 또한 lombok
어노테이션 도입해보면서 왜 해당 어노테이션을 사용하는지 이해할 수 있었다.
Spring과 Spring boot
Spring boot는 Spring에서 어떤 부분이 업그레이드 된 것일까?
간편한 설정 → xml 대신 Java 어노테이션을 사용해 기본적인 설정들을 자동으로 해줌
간단한 의존성 관리 → 의존성을 묶어
starter
로 관리함강력한 확장성 →
starter
추가만으로 원하는 기술 도입 가능내부 톰캣 내장 → 간단한 배포 과정
MSA에 적합한 모니터링
build.gradle
빌드 스크립트
gradle을 이용해 프로젝트를 빌드하고 의존성을 관리하기 위해 작성한 파일
application.yml과 application.properties
스프링부트 설정에는 application.yml
or application.properties
가 쓰인다
Lombok
보일러 플레이트 코드(boiler plate code)의 번거로움을 해소하기 위해 사용
getter, setter, 생성자, equals, toString을 자동으로 만들어줌
[Day14] 마무리
워밍업 클럽 백엔드 스터디를 통해 스프링부트로 서버를 만들고 배포하는 전체적인 과정을 쉽고 빠르게 경험해 볼 수 있었다. 강의 진행 커리큘럼과 과제 제출 날짜가 정해져 있었기 때문에 미루거나 포기하는 일 없이 수강을 완료할 수 있었던 것 같다. 특히 2차례의 Live QnA가 정말 유익했는데, 앞으로 어떤 방향으로 공부해야 할 지 방향성을 잡는데 도움이 되었다.
예전에 자바를 배운 적이 있어 무작정 스프링부트로 백엔드 공부를 시작한 상태였는데, 백엔드 개발자를 목표로 한 걸음 더 나아가려면 자바와 더 친해져야 할 것 같다고 느끼게 되었다. 우선 워밍업 미니 프로젝트를 어느 정도 마무리하면 자바 기초를 복습하고 좀 더 딥한 내용까지 살펴보려고 한다.
제출 과제
[과제6] Controller 역할 분리
이전 과제에서 작성한 코드를 Layered Architecture의 Controller
, Service
, Repository
에 맞춰 역할을 분리했다. @Primary
나 @Qualifier
어노테이션을 사용해 두 가지 Repository를 교체해 사용하는 것을 연습해볼 수 있었다.
[과제7] JPA 연습하기
이전 과제에서 작성한 코드에 JPA
를 도입하고 추가적인 API를 작성하는 과제였다. 과일의 개수를 세거나 특정 기준을 만족시키는 금액을 계산하는 API를 만들어보며 Spring Data JPA
의 쿼리 작성을 연습해볼 수 있었다.
댓글을 작성해보세요.