Skip to content

Latest commit

 

History

History
133 lines (117 loc) · 3.93 KB

File metadata and controls

133 lines (117 loc) · 3.93 KB

Smart IoT Toothbrush Application for Dogs, 양치코치

Capstone Design, Fall 2024, Inha University
인하대학교 종합설계프로젝트 - 대상 수상작

Project Duration : 2024.09. ~ 2024.12.


Server

Spring Boot, Docker 기반 서버 코드.


⚒️ Development Environment

  • Java 11 (OpenJDK 11)
  • Spring Boot
  • MySQL 8 (AWS RDS)
  • Nginx
  • Docker & Docker Compose
  • Gradle

⚙️ Dependencies

Spring Boot Dependencies

  • Spring Web
  • JPA
  • MySQL Driver
  • Spring Security : JWT 인증
  • Swagger : API 문서화
  • Hibernate
  • Lombok
  • KAKAO API

Infrastructure

  • Nginx : 로드밸런싱용
  • Docker : 컨테이너화
  • MySQL : AWS RDS

Configuration

  • Database: MySQL 8

🚩 Implement Method

서버 실행

docker-compose up -d

도커 컨테이너 확인

docker ps

도커 Java Log 확인

docker logs -f [server_hash_number]

서버 종료

docker-compose down

📁 Baekend Folder Structure

📁 PetToothPairy
.
├── Dockerfile
├── build.gradle
├── docker-compose.yml
├── gradle
│   └── wrapper
│       ├── gradle-wrapper.jar
│       └── gradle-wrapper.properties
├── gradlew
├── gradlew.bat
├── nginx.conf
├── run.sh
├── settings.gradle
├── sql
│   └── init.sql
└── src
    └── main
        ├── java
        │   ├── SwaggerConfiguration.java
        │   └── com
        │       └── example
        │           └── server
        │               ├── DemoApplication.java
        │               ├── Response
        │               │   ├── BaseResponse.java
        │               │   ├── CException.java
        │               │   ├── CExceptionHandler.java
        │               │   ├── ErrorBase.java
        │               │   └── SuccessBase.java
        │               ├── controller
        │               │   ├── HomeController.java
        │               │   ├── LoginController.java
        │               │   ├── RefreshTokenController.java
        │               │   ├── RegisterController.java
        │               │   ├── ToothController.java
        │               │   └── UserController.java
        │               ├── jwt
        │               │   └── JwtTokenService.java
        │               ├── model
        │               │   ├── Token.java
        │               │   ├── ToothDataAnalyzer.java
        │               │   ├── User.java
        │               │   ├── UserId.java
        │               │   └── UserPet.java
        │               ├── repository
        │               │   └── UserRepository.java
        │               ├── resttemplate
        │               │   └── RestTemplateConfig.java
        │               └── service
        │                   ├── HomeService.java
        │                   ├── InvalidTokenService.java
        │                   ├── LoginService.java
        │                   ├── RefreshTokenService.java
        │                   ├── RegisterService.java
        │                   ├── ToothService.java
        │                   └── UserService.java
        └── resources
            ├── application-dev.yml
            ├── application-prod.yml
            └── application.yml