ID: key_26_03_01_15_20_53_26_96000 Created date: Jan 15 2026 Thursday, 3rd 20:53 #Java Springboot

연관 문서

1. 애플리케이션 코어 (Application Core)

현대적인 Java 생태계의 표준 스택입니다.

  • Runtime: Java 17 또는 21 (LTS) - 2026년 기준 Java 21의 가상 스레드(Virtual Threads) 활용이 권장됩니다.

  • Framework: Spring Boot 3.x (또는 최신 마이너 버전)

  • Build Tool: Gradle (Kotlin DSL) - 빌드 캐싱 및 멀티 모듈 구성 최적화.

  • API Design: RESTful API + SpringDoc OpenAPI (Swagger) 자동화.

  • Validation: Jakarta Bean Validation (Hibernate Validator).


2. 데이터 및 형상 관리 (Data & Migration)

데이터의 무결성과 DB 구조의 이력을 코드처럼 관리합니다.

  • Persistence: Spring Data JPA + QueryDSL (동적 쿼리 및 타입 안정성).

  • Migration: Flyway - DB 스키마 버전을 코드와 동기화하여 환경별(Dev/Prod) 일치 보장.

  • Connection Pool: HikariCP (기본값, 세부 튜닝 포함).

  • Caching: Redis (Spring Data Redis) - 분산 세션 및 캐시 처리.


3. 클라우드 네이티브 & 인프라 (Cloud Native & Infrastructure)

클라우드 환경(AWS, Azure, K8s)에 즉시 배포 가능한 설정입니다.

  • Containerization: Docker (Multi-stage Build) 및 Cloud Native Buildpacks 활용.

  • Health Check: Spring Boot Actuator (Liveness & Readiness Probes 설정).

  • Observability: * Micrometer + Prometheus (메트릭 수집).

    • OpenTelemetry (분산 트레이싱 - 2026년 표준).
  • Configuration: 환경 변수(Dotenv) 또는 Spring Cloud Config 기반의 외부 설정 관리.


4. 보안 및 인증 (Security & Auth)

엔터프라이즈 수준의 강력한 보안 체계입니다.

  • Authentication: Spring Security + JWT (Stateless).

  • Social Login: OAuth2 Client (Google, Kakao, Naver).

  • CORS: 명확한 도메인 허용 정책 설정.

  • Secret Management: DB 비밀번호 등 민감 정보의 외부 주입 (AWS Secrets Manager 등 연동 준비).


5. 품질 및 테스트 (Quality & Testing)

신뢰할 수 있는 코드를 보장하는 도구들입니다.

  • Testing: JUnit 5, Mockito, Testcontainers (실제 DB 기반 테스트).

  • Static Analysis: SonarQube 또는 ArchUnit (아키텍처 규칙 검증).

  • Documentation: RestDocs (테스트 통과 시에만 문서 생성) 또는 Swagger.

연관 메일