연구실/실험실의 스마트한 폐기물 관리를 위한 백엔드 서버입니다.
JDK 17, Spring Boot 3.5.5, Gradle 환경에서 개발되었습니다.
| 구분 | 기술 |
|---|---|
| Language | Java 17 |
| Framework | Spring Boot 3.5.5 |
| Build Tool | Gradle |
| ORM | Spring Data JPA |
| Database | MySQL |
| Security | Spring Security |
| 기타 | Lombok, Validation, JWT |
src
├─main
│ ├─java/com/labify/backend
│ │ ├─ai
│ │ ├─auth
│ │ ├─config
│ │ ├─disposal
│ │ ├─facility
│ │ ├─inviterequest
│ │ ├─lab
│ │ ├─notification
│ │ ├─pickup
│ │ │ └─request
│ │ ├─qr
│ │ ├─user
│ │ ├─waste
│ │ └─BackendApplication.java
│ └─resources
│ └─application.yml
│ └─data.sql
└─test
└─java/com/labify/backend
└─BackendApplication.java
<domain>
├─controller # API 요청 처리
├─dto # 요청/응답 DTO
├─entity # DB 테이블 매핑 엔티티
├─repository # JPA Repository
└─service # 비즈니스 로직
모든 도메인은 위 구조를 따릅니다.
- JDK 17 이상
- MySQL 8.0 이상
- Gradle (프로젝트에 포함된 Gradle Wrapper 사용 가능)
MySQL에 데이터베이스를 생성합니다.
CREATE DATABASE Labify CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;프로젝트 루트 디렉토리에 .env 파일을 생성하고 다음 내용을 입력합니다.
SPRING_DATASOURCE_URL=jdbc:mysql://localhost:3306/Labify?serverTimezone=Asia/Seoul&characterEncoding=UTF-8
SPRING_DATASOURCE_USERNAME=your_username
SPRING_DATASOURCE_PASSWORD=your_password
AI_SERVER_URL=http://localhost:8000
JWT_SECRET=your-jwt-secret-key-here# Windows
gradlew bootRun
# Mac/Linux
./gradlew bootRun- IDE에 환경 변수 플러그인을 설치합니다 (IntelliJ의 경우 EnvFile 플러그인)
BackendApplication.java파일을 실행합니다.
- 기본 주소:
http://localhost:8080 - API 테스트는 Postman을 사용하세요.
| Picture |
|
|
|---|---|---|
| Name | 김지희 | 이은우 |
| Position |
Backend |
Backend |
| GitHub |

