🏅 캡스톤 디자인 경진 대회 은상 수상 (2025.12) 🏅
🏅 졸업 프로젝트 포스터 세션 우수상 수상 (2025.12) 🏅
| 구성 요소 | 사용 기술 |
|---|---|
| 프레임워크 | Spring Boot, Spring Security, Spring Web, Spring Data JPA |
| 인증 | OAuth 2.0 |
| 서버 / 배포 | AWS EC2, Docker |
| 파일 저장소 | AWS S3 |
| 구성 요소 | 사용 기술 |
|---|---|
| RDBMS | MySQL |
| 캐시 / 세션 저장소 | Redis |
controllerdto- 정적 팩토리 메소드로 entity ↔ dto
entityenum
repositoryservice
config: security, aws 등 설정 정보entity: 공통 엔티티 (예:BaseTimeEntity)payload: 응답 관련 구조code,exception
validation: 커스텀 유효성 검증
git clone https://github.com/DropThe8bit/EverTale_BE.git
cd evertale_be
- application.yml 파일을 생성하고 다음 환경변수들을 입력합니다.
DB_URL=
DB_USER=
DB_PASSWORD=
SPRING_SERVER_SERVLET_CONTEXT_PATH=
AWS_ACCESS_KEY=
AWS_SECRET_ACCESS_KEY=
AWS_S3_BUCKET=
CLIENT_ID=
CLIENT_SECRET=
REDIRECT_URI=
SECRET_KEY=
AI_BASE_URL=
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: ${DB_URL}
username: ${DB_USER}
password: ${DB_PASSWORD}
jpa:
hibernate:
ddl-auto: update
show-sql: true
properties:
hibernate:
dialect: org.hibernate.dialect.MySQL8Dialect
format_sql: true
use_sql_comments: true
jdbc:
time_zone: Asia/Seoul
data:
redis:
host: localhost
port: 6379
servlet:
multipart:
enabled: true
max-file-size: 10MB
max-request-size: 20MB
server:
servlet:
context-path: ${SPRING_SERVER_SERVLET_CONTEXT_PATH}
springdoc:
swagger-ui:
path: /swagger
groups-order: DESC
tags-sorter: alpha
operations-sorter: method
cloud:
aws:
s3:
bucket: ${AWS_S3_BUCKET}
region:
static: ap-northeast-2
credentials:
accessKey: ${AWS_ACCESS_KEY}
secretKey: ${AWS_SECRET_ACCESS_KEY}
jwt:
secret-key: ${SECRET_KEY}
naver:
client-id: ${CLIENT_ID}
client-secret: ${CLIENT_SECRET}
redirect-uri: ${REDIRECT_URI}
ai:
base-url: ${AI_BASE_URL}
- 프로젝트 상단
Run 'EverTale'을 클릭하여 어플리케이션을 실행합니다.