kenu / OKKY-java star

Enter project description

README.md

OKKY#

기술 스택#

  • Java 8
  • Spring Boot 2.2.6.RELEASE
  • Spring Data Jpa
  • Querydsl 4.2.2
  • Freemarker 2.3.30
  • Embedded Tomcat 9.0
  • MySQL 8.0
  • Lombok 1.18.10

개발 환경 설정#

사전 준비 사항#

  • Java8 이상 설치
  • MySQL 8.0 이상 설치
  • IDE 설치

1. Git Clone#

git clone https://github.com/{}.git

2. IDE 설치 및 설정#

2.1 설치#

선호하는 IDE나 편집기를 사용하시면 됩니다.

2.2 Lombok 설정#

설치하신 IDE에 맞게 롬복을 설치해주세요.
https://projectlombok.org/

2.3 Project Import#

Clone한 프로젝트를 IDE 환경에 맞게 Import 해주세요.

3. OKKY 환경 설정#

아래의 환경설정 파일을 수정합니다.

> src/main/resources/application.yml

3.1 DB 설정#

MySQL에서 데이터베이스를 생성해주세요.

CREATE DATABASE okky CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci;

로컬디비에 설정된 host, port, id, password를 변경해주세요.

spring:
  datasource:
      url: jdbc:mysql://<host>:<port>/okky
      username: <id>
      password: <password>

3.2 OAuth 설정#

google, facebook 에서 발급 받은 내용으로 교체합니다.

OAuth 로그인을 사용하지 않는다면 건너 뛰어도 좋습니다.

security:
    oauth2:
      client:
        registration:
          google:
            client-id: <id>
            client-secret: <secret>
            scope:
            - email
            - profile
          facebook:
            client-id: <id>
            client-secret: <secret>
            scope: email

3.3 JavaMailSender 설정#

JavaMailSender는 아래의 기능에서 사용됩니다.

  • 회원가입 인증
  • 아이디 / 비밀번호 찾기
  • 회사인증
mail:
    host: smtp.gmail.com
    port: 587
    username: <id>
    password: <password>

테스트 환경에서 많이 사용하는 Gmail SMTP의 Host와 Port가 기본 설정되어 있습니다.

3.4 reCAPTCHA 설정#

publicKey, privateKey 부분을 Google reCAPTCHA 에서 발급 받은 Key로 교체합니다.

기본값은 localhost:8080에서 작동합니다.

recaptcha:
  publicKey: <publicKey>
  privateKey: <privateKey>

3.5 File Path 설정#

파일을 저장할 절대경로를 설정해주세요.
OS가 Window일 경우 디스크 볼륨명도 함께 입력해주세요.

개발 환경에서는 별도의 fileServer 환경이 구축되어 있지 않아
kr.okky.controller.FileServerController에 선언된
GET /958d6402c010을 사용합니다.

okky:
  ...
  fileURL: /958d6402c010
  filePath: c:/upload

4. 서버 빌드#

개발 환경으로 빌드합니다.

$ mvn package -Dspring.profiles.active=dev

5. 서버 실행#

개발 환경으로 실행합니다.
-Dlog_dir= Log가 저장될 폴더 설정

$ java -jar -Dspring.profiles.active=dev -Dlog_dir=C:/logs/okky <jar path>.jar

서버를 처음 실행한 경우
/src/main/resources/data.sql 파일을 DB에 입력하여 기본 데이터를 세팅하고 서버를 재시작 합니다.

서버가 정상적으로 실행 되었다면 http://localhost:8080 접속 합니다.

6. 기타 정보#

개발 환경으로 실행시 테스트 계정이 자동 설정 됩니다.
kr.okky.config.BootStrap.java에 정의되어 있으며 상세한 정보는 아래의 표를 참고해주세요.

아이디비밀번호이름권한
adminpassword11테스트관리자ROLE_USER, ROLE_ADMIN
testuserpassword11테스트사용자ROLE_USER
testuser2password11테스트사용자2ROLE_USER
testuser3password11테스트사용자3ROLE_USER