본문 바로가기
반응형

spring boot23

2. Github Action & AWS Beanstalk 배포하기 - profile=local로 배포하기 지난 시간에 만들어둔 Github Action을 통해 profile=local로 Beanstalk에 배포를 진행해보겠습니다. profile=local, 즉, 운영 DB와 구글&네이버 OAuth 를 사용하지 않는 간단한 테스트 용도로만 배포할 예정입니다. 실제 운영 배포는 다음 시간에 진행할 예정입니다. Github Action과 Beanstalk 연동된 환경 (즉, 이번 시간에 설정된 환경)를 구성하고 이를 기반으로 개선하는 과정으로 진행할 예정입니다. 지난 시간과 마찬가지로 모든 애플리케이션 코드 (Java & Gradle)는 저의 저서 스프링 부트와 AWS로 혼자 구현하는 웹 서비스를 기반으로 합니다. 2020.12월 기준이기 때문에 시간이 지나면 AWS의 UX 변경이 있을 수 있습니다. 최대한 키워.. 2021. 1. 16.
1. Github Action & AWS Beanstalk 배포하기 - Github Action으로 빌드하기 기존에 사이드 프로젝트를 만들면 다음과 같은 환경에서 진행을 해왔습니다. TravisCI & AWS Code Deploy TravisCI & AWS Beanstalk 상황에 따라 골라 쓰긴 했지만, 큰 불편함이 없었는데요. 최근 대세가 TravisCI에서 Github Action으로 넘어갔음이 느껴져 Github Action과 Beanstalk 조합에 대한 글을 쓰게 되었습니다. Github Action & AWS Code Deploy 조합은 wbluke님의 시리즈를 참고해주시면 됩니다. AWS Beanstalk의 경우 최근 버전업을 하면서 몇몇 변경된 설정들이 있어서 해당 부분 역시 다시 정리할 수 있었습니다. 혹시나 제 저서를 보고 AWS Code Deploy를 사용해오셨다면, 좀 더 편하게 서버를 .. 2020. 12. 25.
Get 요청시 LocalDate 필드에 2월 31일 올 경우 정상 처리 방법 (feat. @DateTimeFormat 제거하기) Spring Boot로 LocalDate를 Request Parameter로 받을 경우 예상치 못한 이슈가 발생합니다. 이번 시간에는 여러 이슈 중 하나인 초과된 날짜에 대해 LocalDate로 받으면 400에러가 발생하는 경우를 어떻게 안전하게 해결할지에 대해서 이야기해보겠습니다. 모든 코드는 Github에 있습니다. 문제 상황 예를 들어 다음과 같은 상황이 있다고 가정해봅시다. 날짜를 파라미터로 하는 API를 제공하고, 다른 팀에서 해당 API를 사용한다고 가정해봅시다. 해당 파라미터는 문자열이 아닌 LocalDate를 필드값으로 선언해서 사용합니다. 그럼 사용하는 팀에선 아래와 같은 투정(?)을 할 수 있습니다. "아니 LocalDate에 2020-02-31을 넣으면 2020년 2월 29일로 잘 반.. 2020. 5. 25.
[스프링 부트와 AWS로 혼자 구현하는 웹 서비스] 출간 후기 (출판사: 프리렉, 쪽수: 416, 정가: 22,000원) 서적 링크 오프라인 서점에는 2019.12.04 (수) 부터 올라갈 예정입니다. 강남 교보문고나 광화문 교보문고는 주말에도 올라올 순 있겠지만, 혹시 모르니 꼭 재고 확인을 하고 방문 부탁드립니다. 현재 (2019.11.30) 온라인 예약 주문은 가능합니다. 교보문고 YES24 인터파크 쿠팡 리디북스 오타나 실습 오류가 있으실 경우 이슈에 등록해주시거나 검색을 부탁드립니다. 소개 저의 첫 저서인 스프링 부트와 AWS로 혼자 구현하는 웹 서비스가 출간되었습니다. 스프링 부트 책으로는 드물게 스프링부트 파트와 AWS를 이용한 운영파트가 5:5로 구성된 책입니다. 즉, 스프링 부트만 사용하는 개발자가 아닌 스프링 부트를 사용하는 서버 개발자가 되고 싶.. 2019. 11. 30.
스프링부트로 쇼핑몰 만들기 - 2주차 HTTP 프로토콜 구조 스프링에 대한 웹 프로그래밍 기본 학습 웹 어플리리케이션 구조 2-1. HTTP 요청과 WAS 브라우저에서 요청 정보가 오면 WAS가 이 요청정보를 모아 HttpServletRequest를 만든다. WAS는 이 요청 정보에서 Context Path를 추출해서 특정 웹 어플리케이션을 찾는다 웹 어플리케이션 안에는 다양한 Resource (정적) 와 Servlet 등이 존재 Context Path뒤에 있는 Path를 통해 어떤 Resource 혹은 Servlet이 필요한지를 찾는다 즉, Path를 통해 찾으려면 Resource 혹은 Servlet들은 고유의 Path를 가져야 한다. WAS에는 Default Servlet이 정적 Resource 서빙을 담당 Servlet (서블릿) Ht.. 2019. 1. 15.
Spring Boot Data Jpa 프로젝트에 Querydsl 적용하기 안녕하세요? 이번 시간에는 Spring Boot Data Jpa 프로젝트에 Querydsl을 적용하는 방법을 소개 드리겠습니다. 모든 코드는 Github에 있습니다. Spring Data Jpa를 써보신 분들은 아시겠지만, 기본으로 제공해주는 @Query로는 다양한 조회 기능을 사용하기에 한계가 있습니다. 그래서 이 문제를 해결하기 위해 정적 타입을 지원하는 조회 프레임워크를 사용하는데요. Querydsl은 Jooq와 함게 가장 유명한 조회 프레임워크입니다. 이번 포스팅에서는 Spring Boot Data Jpa에서 Querydsl을 어떻게 설정하는지를 이야기합니다. Querydsl의 장점 혹은 왜 써야하는지 등의 내용은 담지 않습니다. 이건 나중에 한번 각잡고 작성해서 공유드리겠습니다 :) 개발환경은 .. 2018. 12. 31.

728x90