목록코딩하는 문과생 (220)
코딩하는 문과생
[Enum클래스 장점] 문자열과 비교해, IDE의 적극적인 지원을 받을 수 있습니다. 허용 가능한 값들을 제한할 수 있습니다. 리팩토링시 변경 범위가 최소화 됩니다.(내용의 추가가 필요하더라도, Enum 코드외에 수정할 필요가 없습니다. -> 공통코드라 생각하면 될 듯 하다.) [개발 시 Enum클래스 사용하는 이유] 1. 데이터들 간의 연관관계 표현 가능 - 1,0 or true, false 처럼 동일한 의미를 다르게 처리하는 경우, Enum 클래스를 이용해 단일한 의미로 변경해 처리할 수 있다. ex) GUEST라는 Enum 상수 내에 동일한 의미를 가진 값을 넣어 참조가 가능하다. @Getter @RequiredArgsConstructor public enum Role { GUSET("손님", fa..
※ 해당 글은 튜토리얼이 아닌 헷갈리거나 중요한 개념 위주로 정리한 글입니다. [Nginx를 통한 무중단배포] [Nginx와 기존 프로젝트 연결] 1. EC2내 엔진엑스 설치 $ sudo amazon-linux-extras install nginx1 $ sudo service nginx start 2. EC2의 보안그룹 내 포트번호 80 추가 3. 구글 로그인 및 네이버 로그인의 기존 도메인에 포트번호80 추가 4. nginx와 스프링 부트(기존프로젝트) 연동 - 프록시와 관련된 설정 추가 후 nginx 재기동 $ sudo vim /etc/nginx/nginx.conf location / { proxy_pass http://localhost:8080; proxy_set_header X-Real-IP $r..
※ 해당 글은 튜토리얼이 아닌 헷갈리거나 중요한 개념 위주로 정리한 글입니다. [CI - 지속적 통합] CI: 지속적 통합, 개발한 코드가 버전관리 시스템(SVN, GIT)에 push가 되면 자동으로 테스트, 빌드가 이루어져 안정적인 배포파일을 만드는 과정 CD: 지속적 배포, 빌드파일을 자동으로 운영 서버에 무중단 배포까지 진행하는 과정 [CI의 4대규칙] 누구든 현재 소스에 접근할 수 있는 단일지점을 유지할 것 누구든 시스템을 빌드하는 단일 명령어 사용할 수 있게 할 것 단일 명령어로 건전한 테스트 실행할 수 있게 할 것 누구나 현재 실행파일이 완전한 실행파일이게 확신하게 할 것 [Travis CI] : CI툴, 깃허브와 연동되어 사용된다. - 프로젝트 전체 흐름 * 빌드(2, 3, 4)는 Travi..
※ 해당 글은 튜토리얼이 아닌 헷갈리거나 중요한 개념 위주로 정리한 글입니다. [EC2 설정] 코드는 모두 생략, 흐름만 간단히 알아보자. 1. git설치 * ~/app/step1 내 내 github에 등록된 git프로젝트 경로를 이용해 clone하고 git pull 진행 2. 다운받은 프로젝트 테스트 진행 * 프로젝트에 들어와 gradlew test 명령어 실행, 그리고 테스트 성공 확인 * gradle wrapper을 줄여서 gradlew라고 사용한다. 새로운 환경에서 프로젝트를 설정할 때 java나 gradle을 설치하지 않고 바로 빌드할 수 있게 해주는 역할을 한다. * gradlew test, gradlew build 명령어를 통해 테스트 및 빌드를 한다. 3. 배포스크립트 작성 * ~/app/..