프로젝트 요구사항에 맞게 도메인을 구성하고, JPA 와 연동하여 데이터가 데이터베이스에 저장한다. 테스트 코드를 작성하여 구성한 코드가 올바르게 동작하는지 확인한다.
Posts 엔티티 클래스와 JpaRepository를 이용하여 사용자가 게시글을 등록할 수 있도록 API를 만들어보자. API 클래스는 어떻게 구성을 살펴보고, 데이터의 흐름이 어떻게 되는지 살펴보자.
수정, 조회 API를 만들고, 테스트 코드로 기능을 검증해보자.
JPA Auditing으로 생성시간/수정시간 자동화하기
클라이언트 템플릿 엔진으로 머스테치를 사용하여 게시글 등록, 조회 화면을 구현해보자.
수정과 삭제 화면은 mustache로 구현해보자.
스프링 시큐리티와 OAuth를 이용하여 소셜 로그인 정보로 로그인하는 기능을 구현해보자.
HTTP 세션에 대해 알아보고 코드로 구현해보자.
세션저장소로 데이터베이스를 사용하여 애플리케이션 재시작시 로그인 데이터가 유지되도록 한다.
네이버 로그인 기능을 추가한다.
스프링 시큐리티를 적용하고 나면 기존에 작성한 테스트 코드에 에러가 발생하는데 이 문제를 해결해보자.
AWS 로 인프라를 구성하고, 프로젝트를 올릴 수 있도록 Linux 환경을 구성해본다.
AWS RDS 인스턴스를 생성해보자.
AWS RDS 초기 설정인 파라미터를 설정해보자.
로컬 PC와 AWS EC2에서 데이터베이스에 접근할 수 있도록 RDS 보안 그룹을 설정한다.
AWS EC2에 스프링 부트 프로젝트를 배포한다.
스프링 부트 프로젝트와 RDS를 연동한다.
로그인 API에 퍼블릭 도메인을 등록하여 AWS 환경에서 소셜 로그인 기능이 동작하도록 해본다.
EC2 도메인으로 접속하여 로그인 후 글 포스팅할 때 403에러가 발생한다.사용자에게 포스팅할 수 있는 권한이 없어서 발생하는 문제를 해결해보자.
적절한 CI, CD 서비스를 선택하여 빌드, 배포, 실행까지 자동화해보자.