상업공간 잠재력 예측을 위한 REST API 서비스
PlanW는 상업공간의 잠재력을 분석하고 예측하는 머신러닝 기반 API 서비스입니다. JWT 인증을 통한 보안된 접근과 대용량 데이터 처리 기능을 제공합니다.
- 상업공간 잠재력 예측: 머신러닝 모델을 통한 상업공간 성공 가능성 분석
- JWT 기반 인증: 보안된 API 접근을 위한 토큰 기반 인증
- 대용량 데이터 처리: CSV 파일 업로드를 통한 배치 데이터 처리
- RESTful API: 표준 HTTP 프로토콜을 통한 API 제공
- Spring Data JPA: 데이터베이스 ORM
- Spring Validation: 입력 데이터 검증
- Apache Commons CSV: CSV 파일 처리
- Lombok: 보일러플레이트 코드 감소
- Java 17 이상
- MySQL 8.0 이상 (운영환경)
- 저장소 클론
git clone https://github.com/your-username/planw.git
cd planw- 애플리케이션 실행
./gradlew bootRun기본적으로 http://localhost:8080에서 서비스가 시작됩니다.
운영환경에서는 application-mysql.yml을 사용하여 MySQL 데이터베이스를 설정하세요.
spring:
datasource:
url: jdbc:mysql://localhost:3306/planw
username: planw_user
password: your_passwordPOST /api/signup
Content-Type: application/json
{
"email": "[email protected]",
"password": "password123"
}
POST /api/login
Content-Type: application/json
{
"email": "[email protected]",
"password": "password123"
}
GET /api/prediction?address=서울 강남구 테헤란로 123
Authorization: Bearer {jwt_token}
POST /api/admin/prediction/upload
Authorization: Bearer {jwt_token}
Content-Type: multipart/form-data
file: prediction.csv
CSV 파일 형식 예시
address,predicted_rent,predicted_sales,floating_population,price_change_rate,previous_sales,latitude,longitude 서울 강남구 테헤란로 123,4000000,12000000,23000,1.03,8500000,37.501288,127.023612
./gradlew test./gradlew build이 프로젝트는 MIT 라이선스 하에 배포됩니다.
버그 리포트나 기능 제안은 이슈를 통해 제출해 주세요.