enjoy-diving 스쿠버 다이빙 로그 관리를 위한 개인 프로젝트
Server를 구성하고 있는 framework 및 library 정보
JAVA JDK는 1.8을 기본으로 사용
- Spring Boot
- Spring Security
- Spring Security OAuth2
- Spring Session With Redis
- Spring Social
- Spring Cloud With AWS S3
- Spring Data JPA
- Querydsl
- MariaDB
- Thymeleaf
- Spring Test
- Spring Security Test
- Gradle Build Tool
- Docker
- Logback
- java :
1.8
- gradle wrapper :
3.3
- spring boot(web, jpa, security, validation, jdbc, devtools, test) :
1.5.2.RELEASE
- spring session :
1.3.1.RELEASE
- spring social :
1.1.4.RELEASE
- dependency-management-plugin :
1.0.1.RELEASE
- lombok :
1.16.14
- spring-security-test :
4.2.2.RELEASE
- spring-boot-starter-thymeleaf :
3.0.2.RELEASE
- mysql :
5.1.41
- h2 :
1.4.194
- querydsl :
4.1.4
Build Tool은 Gradle을 이용 하며, Multi Project로 구성함으로써 Project Package를 재활용하여 중복되는 코드를 줄이고, Project를 계층 또는 다양화할 수 있도록 설계
enjoy-diving 프로젝트의 root project
(base gradle 설정을 포함)
enjoy-diving 프로젝트의 common project
로 공통으로 사용하는 Entity, Repasitory, Utility 클래스를 정의
enjoy-diving 프로젝트의 스쿠버 다이빙 로그 관리 project
로 웹 서버를 구현
- web, jpa, Security, validation, jdbc, devtools, social
- thymeleaf, jquery
- test, security test
- h2, mysql
enjoy-diving 프로젝트의 rest api project
로 연동에 필요한 API를 구현
- 인증 :
Spring Security Oauth2
기반으로 구성하여 인증 하며, Token은redis
방식을 이용 - API :
Spring Web
기반에@RestController
를 이용