/springboot-lol-community

남녀노소 불문! 즐겜러의 롤 정보 공유 커뮤니티!

Primary LanguageJava

롤 커뮤니티 서비스

1. 프로젝트 개요

1-1. 목표

  • 사용자 간에 자유롭게 의사소통 할 수 있는 롤 커뮤니티 서비스 개발

1.2. 기능

  • 자유 게시판 / 신고 게시판 기능
    1. 자유 게시판
      • 등급에 따른 차등 게시글 기본 조회
      • 유형 별 분류, 등급 별 조회 카테고리 제공 (등급 : 롤 티어 및 관리자 계정 등급을 의미)
    2. 신고 게시판
      • 유형 별 분류 카테고리 제공
    3. 게시글에 대한 댓글 기능

2. 기술 스택

[Front-end]

  • HTML
  • CSS
  • Javascript

[Back-end]

  • 스프링 부트
  • 타임리프
  • 스프링 데이터 JPA

[Database]

  • MySQL

3. 패키지 구조

  • 도메인과 계층형을 섞은 하이브리드 구조 택
.
├── main
│   ├── generated
│   ├── java
│   │   └── com
│   │       └── lol
│   │           └── community
│   │               ├── LolCommunityApplication.java
│   │               ├── board
│   │               │   ├── controller
│   │               │   │   ├── BoardApiController.java
│   │               │   │   └── BoardController.java
│   │               │   ├── domain
│   │               │   │   ├── Board.java
│   │               │   │   ├── BoardReaction.java
│   │               │   │   └── BoardType.java
│   │               │   ├── dto
│   │               │   │   ├── BoardSearch.java
│   │               │   │   ├── request
│   │               │   │   │   ├── BoardRequest.java
│   │               │   │   │   └── BoardSearchRequest.java
│   │               │   │   └── response
│   │               │   │       ├── BoardBaseResponse.java
│   │               │   │       ├── BoardMainResponse.java
│   │               │   │       ├── BoardMainView.java
│   │               │   │       └── BoardResponse.java
│   │               │   ├── repository
│   │               │   │   ├── BoardReactionRepository.java
│   │               │   │   └── BoardRepository.java
│   │               │   └── service
│   │               │       ├── BoardReactionService.java
│   │               │       ├── BoardService.java
│   │               │       └── BoardServiceImpl.java
│   │               ├── category
│   │               │   ├── domain
│   │               │   │   └── Category.java
│   │               │   ├── dto
│   │               │   │   └── response
│   │               │   │       └── CategoryResponse.java
│   │               │   ├── repository
│   │               │   │   └── CategoryRepository.java
│   │               │   └── service
│   │               │       └── CategoryService.java
│   │               ├── comment
│   │               │   ├── Comment.java
│   │               │   ├── repository
│   │               │   │   └── CommentRepository.java
│   │               │   └── service
│   │               │       └── CommentService.java
│   │               ├── global
│   │               │   ├── BaseEntity.java
│   │               │   ├── config
│   │               │   │   ├── JpaAuditingConfig.java
│   │               │   │   ├── SwaggerConfig.java
│   │               │   │   ├── WebConfig.java
│   │               │   │   └── WebSecurityConfig.java
│   │               │   └── exception
│   │               │       └── ExceptionType.java
│   │               └── user
│   │                   ├── controller
│   │                   │   ├── LoginController.java
│   │                   │   └── UserController.java
│   │                   ├── domain
│   │                   │   ├── Grade.java
│   │                   │   ├── GradeCode.java
│   │                   │   └── User.java
│   │                   ├── dto
│   │                   ├── form
│   │                   │   ├── LoginForm.java
│   │                   │   ├── UserEditForm.java
│   │                   │   ├── UserListForm.java
│   │                   │   └── UserSaveForm.java
│   │                   ├── login
│   │                   │   ├── Login.java
│   │                   │   ├── LoginMemberArgumentResolver.java
│   │                   │   ├── SessionConst.java
│   │                   │   └── SessionValue.java
│   │                   ├── repository
│   │                   │   ├── UserRepository.java
│   │                   │   └── UserRepositoryImpl.java
│   │                   └── service
│   │                       ├── LoginService.java
│   │                       ├── UserService.java
│   │                       └── UserServiceImpl.java
│   └── resources
│       ├── application.yml
│       ├── static
│       │   ├── css
│       │   │   ├── addUserForm.css
│       │   │   ├── article.css
│       │   │   ├── editUserForm.css
│       │   │   ├── loginForm.css
│       │   │   ├── newArticle.css
│       │   │   ├── normalize.css
│       │   │   └── userAuth.css
│       │   ├── img
│       │   │   ├── arrow.png
│       │   │   ├── authBtn.png
│       │   │   ├── banner.png
│       │   │   ├── btn_write.png
│       │   │   ├── footer_img.png
│       │   │   ├── footer_img_dohan.png
│       │   │   ├── lock_img.png
│       │   │   ├── logo.png
│       │   │   ├── logo_top.png
│       │   │   ├── pencil.png
│       │   │   ├── plus.png
│       │   │   ├── search.png
│       │   │   ├── user.png
│       │   │   └── user_img.png
│       │   └── js
│       │       └── article.js
│       └── templates
│           ├── board
│           │   ├── articles.html
│           │   └── newArticle.html
│           ├── layout
│           │   ├── footer.html
│           │   ├── head.html
│           │   └── header.html
│           ├── login
│           │   └── loginForm.html
│           └── users
│               ├── addUserForm.html
│               ├── editUserForm.html
│               ├── list.html
│               ├── listEditUser.html
│               └── userAuth.html
└── test
    └── java
        └── com
            └── lol
                └── community
                    ├── LolCommunityApplicationTests.java
                    ├── board
                    │   └── controller
                    │       └── BoardApiControllerTest.java
                    └── user
                        └── service
                            └── UserServiceImplTest.java

4. 데이터베이스 모델링(ER Diagram)

🔗 ERD 클라우드 링크

erd

5. 화면 구성

🔗 피그마 링크

6. API 설계서

🔗 API 설계 문서 api설계서

7. 프로젝트 운영 관리

깃헙으로 관리하기 어려운 세부일정과 팀원들과의 협업을 위한 가이드 문서를 노션에 정리했습니다.

🔗 노션 링크 참고

일정 관리

노션 타임라인으로 세부일정을 관리합니다.
timdline