MZ 세대
를 위한 릴레이 소설 웹페이지
- 본 서비스는 2022 Uni-DTHON 위해 제작되었습니다.
- 여러 사람이 하나의 주제나 스토리 흐름에 맞게 글을 이어서 써 내려갈 수 있도록 하는 서비스입니다.
Presentation Slides / Demo Video
git clone https://github.com/UniD-Hackathon-Team12/UniD-Hackathon-Team12-backend.git
cd
./gradlew build clean
cd ./build/libs
java -jar demo-0.0.1-SNAPSHOT.jar
-
김선우 (성균관대학교)
- 데이터 베이스 개념적 설계 & 논리적 설계
- user/mypage API 구현
- novel/all API 구현
- novel/part/:challenge API 구현
- novel/:novelid API 구현
- novel/:novelid/relay API 구현
-
김민지 (숙명여자대학교)
- 데이터 베이스 개념적 설계 & 논리적 설계
- /keyword/rank API 구현
- novel/all API 구현
- novel/:novelid/relay API 구현
- novel/:novelid/keyword API 구현
- novel/:novelid/like API Bug Fix
로그인 | 회원가입 |
소설 검색(키워드/내용) |
카테고리 탭 | 카테고리 소설 |
소설 시작하기 |
소설 읽기 | 소설 이어쓰기 |
마이페이지(작성글/참여글/좋아요글) |
BackEnd | Spring Boot |
Database | MySQL + RDS |
배포 | Amason EC2 |
Strategy | RESTful API |
Other Tool | Notion, Slack |
* 📦 Novel-Relay-Server
├── .gradle
├── gradle/wrapper
├── logs
├── out/production
├── src
│ ├── test/java/com/example/demo
│ ├── main
│ │ ├── java/com/example/demo
│ │ │ ├── config
│ │ │ │ ├── secret
│ │ │ │ │ └── Secret.java
│ │ │ │ ├── BaseException.java
│ │ │ │ ├── BaseResponse.java
│ │ │ │ ├── BaseExceptionStatus.java
│ │ │ │ └── Constant.java
│ │ │ ├── src
│ │ │ │ ├── controller
│ │ │ │ │ ├── KeywordController.java
│ │ │ │ │ ├── NovelController.java
│ │ │ │ │ └── UserController.java
│ │ │ │ ├── dto
│ │ │ │ │ ├── request
│ │ │ │ │ │ ├── GetAllReq.java
│ │ │ │ │ │ ├── GetCategoryReq.java
│ │ │ │ │ │ ├── GetMyPageReq.java
│ │ │ │ │ │ ├── GetNovelIdReq.java
│ │ │ │ │ │ ├── GetNovelListSearchReq.java
│ │ │ │ │ │ ├── GetRankReq.java
│ │ │ │ │ │ ├── PatchKeywordReq.java
│ │ │ │ │ │ ├── PatchLikeReq.java
│ │ │ │ │ │ ├── PostNovelReq.java
│ │ │ │ │ │ ├── PostRelayReq.java
│ │ │ │ │ │ ├── PostSignUpReq.java
│ │ │ │ │ │ └── PostSignInReq.java
│ │ │ │ │ └── reponse
│ │ │ │ │ │ ├── GetAllRes.java
│ │ │ │ │ │ ├── GetCategoryRes.java
│ │ │ │ │ │ ├── GetMyPageRes.java
│ │ │ │ │ │ ├── GetNovelIdRes.java
│ │ │ │ │ │ ├── GetNovelListSearchRes.java
│ │ │ │ │ │ ├── GetRankRes.java
│ │ │ │ │ │ ├── PatchKeywordRes.java
│ │ │ │ │ │ ├── PatchLikeRes.java
│ │ │ │ │ │ ├── PostNovelRes.java
│ │ │ │ │ │ ├── PostRelayRes.java
│ │ │ │ │ │ ├── PostSignUpRes.java
│ │ │ │ │ │ └── PostSignInRes.java
│ │ │ │ ├── entity
│ │ │ │ │ │ ├── BaseTimeEntity.java
│ │ │ │ │ │ ├── KEYWORD.java
│ │ │ │ │ │ ├── KEYWORDRANK.java
│ │ │ │ │ │ ├── LIKEINFO.java
│ │ │ │ │ │ ├── NOVEL.java
│ │ │ │ │ │ ├── RELAY.java
│ │ │ │ │ │ └── USER.java
│ │ │ │ ├── repository
│ │ │ │ │ │ ├── KeywordRankRepository.java
│ │ │ │ │ │ ├── KeywordRepository.java
│ │ │ │ │ │ ├── LikeInfoRepository.java
│ │ │ │ │ │ ├── NovelRepository.java
│ │ │ │ │ │ ├── NovelRepositoryCustom.java
│ │ │ │ │ │ ├── NovelRepositoryImpl.java
│ │ │ │ │ │ ├── RelayRepository.java
│ │ │ │ │ │ └── UserRepository.java
│ │ │ │ ├── service
│ │ │ │ │ │ ├── KeywordRankService.java
│ │ │ │ │ │ ├── KeywordService.java
│ │ │ │ │ │ ├── LikeInfoService.java
│ │ │ │ │ │ ├── NovelService.java
│ │ │ │ │ │ └── UserService.java
│ │ │ │ └── WebSecurityConfig.java
│ │ │ ├── utils
│ │ │ │ ├── JWTService.java
│ │ │ │ ├── SHA256.java
│ │ │ │ └── ValidationRegex.java
│ │ │ └── DemoApplication.java
│ │ └── resources
│ │ │ ├── application.yml
│ │ │ └── logback-spring.xml
├── .gitignore
├── build.gradle
├── gradlew
├── gradlew.bat
└── setting.gradle
- IntelliJ + Spring Boot