프로젝트 URL: 푸드스타그램
음식점 리뷰를 작성하기 위해 만든 개인 웹 프로젝트입니다.
게시글은 다른 사용자와 공유하지 않으며 작성자만 확인할 수 있습니다.
음식점에 점수를 매기거나 리스트로 등록하기, 지도 기능 등 가게에 대한 다양한 정보를 작성할 수 있습니다.
SpringBoot로 개발하였고 Kakao OAuth2 로그인 기능, 로그인시 JWT 발급하여 Redis에 저장, Oracle Cloud로 배포 등 여러 기능을 사용하여 구현하였습니다.
Github Action을 사용하여 CI/CD를 구현하였습니다.
개발 환경
- SpringBoot 3.1.0, Gradle, Java 17
- Oracle Database 19c
- Oracle cloud instance, Oracle cloud ATP
사용된 기술
- Redis memory, JWT
- JavaScript, JQuery, Thymeleaf
- Kakao map, OAuth2 API, Gmail smtp
- Spring Security
- Github Actions CI/CD
프로젝트 주요기능은 게시글, 리스트, 마이페이지, 계정 서비스, 관리자 서비스 입니다.
-
게시글
음식점의 간단한 정보와 주소, 사진을 등록합니다.
저장한 게시글은 검색조건을 설정하여 검색할 수 있고 목록 형태로 확인할 수 있습니다. -
리스트
게시글을 리스트로 관리할 수 있습니다.
예를 들어 경주 여행이나 부산 맛집 등 리스트를 생성하여 리스트 별로 게시글을 한 번에 확인할 수 있습니다. -
마이페이지
회원이 작성한 게시글, 리스트 수를 확인할 수 있습니다.
또한 비밀번호 변경, 회원 탈퇴, 로그 아웃 및 계정과 관련된 기능을 진행할 수 있습니다. -
계정 서비스
계정 서비스에는 회원가입, 로그인, 아이디, 비밀번호 찾기 기능이 있습니다.
회원가입, 아이디, 비밀번호 찾기는 이메일을 인증하여 진행합니다.
로그인으로 일반 회원가입과 Kakao 간편 회원가입이 있습니다.
로그인 시 Redis In memory에 JWT 토큰을 관리하여 최대 2주동안 로그인 유지가 가능합니다. -
관리자 서비스
게시글 카테고리를 관리할 수 있습니다.
- 로그인 및 회원가입
- 카카오 로그인
- 게시글 검색 및 목록
_.mp4
- 게시글 상세보기
_.mp4
- 리스트 목록 및 등록하기
- Redis 서버 분리하여 JWT, 이메일 인증번호 저장하기