Skip to content

FastCampus-Mini5/BE_server

Repository files navigation


🐶 프로젝트 소개

개발 기간 : 2023. 07. 24. 월 ~ 2023. 08. 10. 목
> 배포 주소 : 당연하지
> 백엔드 레포지토리 : 백엔드
> 프론트 유저 레포지토리 : 프론트 유저
> 프론트 관리자 레포지토리 : 프론트 관리자

📚 STACKS




💬 Communication


👨‍👩‍👧‍👦 팀원 역할


정현수 : 관리자


황인영 : 관리자


신용호 : 유저


양수현 : 유저

관리자 로그인,
관리자 회원가입,
관리자 회원관리,
페이징
연차 / 당직 승인,
연차 / 당직 리스트,
페이징
유저 로그인,
유저 회원가입,
서버 배포
연차 / 당직 신청,
연차 / 당직 취소,
전체 리스트 캘린더,
엑셀 다운로드

🐣 프로젝트 시작하는 법

1. 사전 준비

1-1. Docker 설지

1-2. .env 파일 생성 및 설정

# SECRET_KEY 는 임의로 설정해도 상관없으나 길이와 형식은 동일해야 합니다.
JWT_SECRET_KEY=7f186169-ea6d-4bb8-80a1-148329b820c1
AES_SECRET_KEY=53B7A77CA2E9BA6CAA901E3A7087E638

# 아래 정보를 바탕으로 docker compose 가 실행됩니다
DB_URL=localhost
DB_NAME=kdtmini5             # DB 이름
DB_PORT=3306                 # DB 포트
DB_USER=kdtmini5             # DB 사용자 ID
DB_PASSWORD=kdtKDTminiMINI5! # DB 사용자 패스워드
DB_TYPE=mysql
DB_DRIVER=com.mysql.cj.jdbc.Driver

MAIL_SENDER_HOST=smtp.naver.com
MAIL_SENDER_PORT=465
MAIL_SENDER_USERNAME=jhss0113@naver.com  # 네이버 ID - 메일 환경 설정에서 POP/IMAP 발송 설정 필요
MAIL_SENDER_PASSWORD=Z26WP98RH64K        # 네이버 2단계 인증 - 애플리케이션별 비밀번호

1-3. (Option) IntelliJ - EnvFile Plugin

  • 해당 플러그인을 사용할 경우 IntelliJ 에서 위에서 작성한 .env를 이용하여 환경 변수를 지정할 수 있습니다.
  • .env 파일로 환경 변수 설정하기

1-4. application-dev.yml 내용 직접 수정 (1-3. 미적용시)

  • 1-2 의 내용을 참고하여 adminapplicationapplication-dev.yml 을 아래와 같이 수정해주세요.
  • 도커를 사용하지 않고 Local Database를 사용하는 경우에도 해당됩니다.
# 다른 부분 생략
spring:
  datasource:
    username: ${DB_USER} # DB_USER 직접 입력
    password: ${DB_PASSWORD} # DB_PASSWORD 직접 입력
    url: jdbc:mysql://localhost:3306/${DB_NAME} # DB_NAME 에 직접 입력. mysql 이라고 가정.
    driver-class-name: com.mysql.cj.jdbc.Driver

1-5. admin, application 동시 실행시 테스트 데이터 초기화 하나만 활성화

  • 테스트 데이터의 내용은 admin, application 이 동일합니다.
  • 둘을 동시에 실행하실 경우 둘 중 하나를 선택하여 application-dev.yml 을 수정하여 주세요
  • 단, 비활성화된 애플리케이션을 나중에 실행해야 합니다.
spring: 
  jpa:
    hibernate:
      ddl-auto: none # none 으로 수정
      naming:
        physical-strategy: org.hibernate.boot.model.naming.  CamelCaseToUnderscoresNamingStrategy
    properties:
      hibernate:
        format_sql: true
        show_sql: true
        dialect: org.hibernate.dialect.MySQL8Dialect
    defer-datasource-initialization: false # false 로 수정
    open-in-view: true

## 아래의 내용을 삭제
  sql:
    init:
      mode: always
      data-locations: classpath:test/data.sql

🖥 기능 소개

🧙🏻‍♂️ 로그인, 회원가입 페이지 구성

로그인 페이지
회원가입 페이지
프로필 수정 페이지
비밀번호 재설정 페이지



🧙🏻‍♀️ Side Bar - 네비게이션 페이지 구성

홈 페이지
연차 신청 페이지
당직 신청 페이지
내 일정보기 페이지



🧙🏻 관리자 권한 페이지 구성

관리자 로그인 페이지
유저 리스트 페이지
연차 요청 리스트 페이지
연차 리스트 페이지
당직 요청 리스트 페이지
당직 리스트 페이지

ERD


📝 License

Copyright © 2023 당연하지.
This project is MIT licensed.

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •