-
Notifications
You must be signed in to change notification settings - Fork 0
Hadam‐backend Wiki
2023-2024 가천대학교 졸업작품 5조
바쁜 삶에서 일기를 매일매일 기록하기란 쉽지 않습니다.
이러한 어려움을 겪는 사람들을 위해, 하담은 간단한 키워드 입력으로 생성형 AI를 이용해 일기를 생성하고,
생성형 이미지를 통해 시각적으로도 하루의 기록을 담아주는 서비스입니다.
박지영(ziiyouth) |
---|
![]() |
🚀 Back-end Developer |
카카오톡 소셜 로그인을 통해 간편한 회원가입이 가능합니다.
날짜, 시간, 장소, 사람, 감정, 경험을 키워드 형식으로 간편하게 입력받아 gpt 모델을 이용한 일기를 생성합니다.
작성된 일기에 어울리는 생성형 이미지를 볼 수 있습니다.
달 별 대표 일기를 메인 화면에서 슬라이드 형식으로, 일 별 일기를 원하는 정렬 순으로 검색하고 조회할 수 있습니다.
달력을 통해 N년 전 나의 하루를 돌아볼 수 있고, 현재 나의 감정을 통해 오늘과 비슷한 과거의 일기를 조회할 수 있습니다.
모아보고 싶은 일기에 좋아요를 눌러 별도로 보관할 수 있습니다.
자신의 정보를 설정할 수 있습니다.
역할 | 종류 |
---|---|
Framework |
|
Database | |
Database Service | |
Programming Language | |
API | |
Version Control |
|
CICD |
|
역할 | 종류 |
---|---|
협업 관리 | |
디자인 | |
소통 |
📂 src
┣ 📂 java.com.hadam.hadam
┃ ┣ 📂 domain
┃ ┃ ┣ 📂 sample
┃ ┃ ┃ ┣ 📂 controller
┃ ┃ ┃ ┣ 📂 domain
┃ ┃ ┃ ┣ 📂 dto
┃ ┃ ┃ ┃ ┣ 📂 request
┃ ┃ ┃ ┃ ┣ 📂 response
┃ ┃ ┃ ┣ 📂 service
┃ ┃ ┃ ┣ 📂 repository
┃ ┣ 📂 global
┃ ┃ ┣ 📂 common
┃ ┃ ┣ 📂 check
┃ ┃ ┣ 📂 error
┃ ┃ ┃ ┣ 📂 dto
┃ ┃ ┃ ┣ 📂 exception
┃ ┃ ┃ ┣ 📂 handler
┃ ┃ ┣ 📂 external
┣ 📂 resources
┃ ┣ application.yml
┣ HadamApplication.class
-
안드로이드와 EC2 내에 올라간 서버가 Restful API를 통해 통신합니다.
-
스프링과 fast api 서버가 같은 RDS에 접속하게 되며, mysql 기반의 DB를 사용합니다.
-
일기 생성에 대한 request가 들어올때는 fast api 서버를 통해 모델이 작동하게 됩니다.
-
일기의 글은 GPT를, 이미지는 Stable Diffusion을 통해 생성한 뒤 s3에 업로드하여 사용하게 됩니다.
-
백엔드 서버는 자바17 기반의 스프링부트3을 이용해 개발했습니다.
-
스프링 데이터 JPA를 사용해 객체-관계 매핑의 장점을 살리고 UI 디자인을 기반으로 한 ERD를 구상했습니다.
-
이로 RESTful한 API를 개발하며 트랜잭션 관리로 DB 작업에 대한 일관성을 보장했습니다.
-
깃허브 액션과 도커 컴포즈를 사용해 CICD를 구축하고 블루-그린 무중단 배포를 구현하였습니다.
- git clone을 진행한다.
- resources 폴더에 application.yml을 추가한다.
- build/libs 디렉터리로 이동해 java -jar hadam-0.0.1-SNAPSHOT.jar 명령어를 실행한다.