Spring Boot를 경량 Docker 이미지로 패킹하기
멀티스테이지 빌드, 계층화된 jar, 최소 JRE, 루트가 아닌 사용자를 사용하여 작고 빠르게 빌드되며 안전한 Docker 이미지를 만들어봅시다.
멀티스테이지 빌드, 계층화된 jar, 최소 JRE, 루트가 아닌 사용자를 사용하여 작고 빠르게 빌드되며 안전한 Docker 이미지를 만들어봅시다.
Spring Kafka를 이용한 KafkaTemplate으로 메시지 송신, @KafkaListener로 수신, Dead Letter Topic을 이용한 에러 처리, Embedded Kafka로 테스트하는 방법을 소개합니다.
Spring Data JPA의 Pageable, Page, Slice, Sort를 사용하여 데이터를 페이지 나누기하고 정렬하는 방법을 repository에서 REST controller까지 설명하며, 테스트와 자주 발생하는 오류를 포함합니다.
@Transactional이 proxy를 통해 동작하는 방식과 self-invocation, checked exception, rollback-only, 그리고 테스트에서 오류를 가리는 등의 자주 만나는 함정들을 다룹니다.
fixedRate, fixedDelay, cron을 사용한 @Scheduled의 사용 방법, 스레드 풀 구성, 에러 처리, 테스트 작성, 정기 작업 실행 시 흔히 발생하는 오류들
Testcontainers와 @ServiceConnection으로 PostgreSQL에서 실행되는 통합 테스트 작성, 테스트 클래스 간 컨테이너 공유 및 흔한 오류 방지 방법
Spring Boot 3에서 Redis와 함께 @Cacheable, @CachePut, @CacheEvict를 사용하는 방법, TTL 설정, JSON serializer 구성, Testcontainers로 테스트 작성하기
Spring Boot 3에서 Flyway로 데이터베이스 스키마 관리하기. SQL과 Java로 마이그레이션 작성, 설정, 테스트 및 일반적인 오류 처리 방법을 다룹니다.
REST API용 JWT를 활용한 Spring Security 구성: 로그인 시 토큰 발급, Stateless 인증, 역할별 권한 부여 및 MockMvc를 통한 테스트 작성.
Spring Profile로 dev, test, prod 환경별 설정과 bean을 분리하고, profile 활성화 방법, 테스트 작성, 흔한 오류를 다룹니다.
RestClient로 HTTP API 호출하는 방법: GET/POST, 에러 처리, 타임아웃, 인터셉터, HTTP 인터페이스, MockRestServiceServer를 이용한 테스트
Spring Boot Actuator를 설정하여 헬스 체크, liveness/readiness probe 및 Micrometer의 메트릭을 구성하고 Prometheus로 내보내는 방법을 알아봅니다.
@ConfigurationProperties를 사용하여 타입이 명시적인 record로 설정을 그룹화합니다. 복잡한 타입 바인딩, 시작 시 유효성 검사, IDE 메타데이터 및 테스트 방법을 안내합니다.
@WebMvcTest, MockMvc 및 @MockitoBean을 사용하여 REST controller를 빠르게 테스트하고, 웹 계층만 로드하며, JSON, validation 및 예외 처리를 확인하는 방법.
@ControllerAdvice와 @ExceptionHandler를 사용해 에러를 집중식으로 처리하고, controller 곳곳의 try-catch 대신 표준화된 응답을 반환하는 방법 가이드
Spring Data JPA가 자동으로 repository를 생성하는 방식, query method의 네이밍 규칙, @Query를 언제 사용해야 하는지 배웁니다.
Spring Boot로 Order(주문) 관리 REST API를 구축하는 단계별 가이드입니다. 프로젝트 초기화부터 controller 테스트 작성까지를 다룹니다.
Spring Boot에서 Bean Validation을 활용한 입력 데이터 검증, 커스텀 validator, 그리고 검증 오류를 클라이언트에 깔끔하게 반환하는 방법을 알아봅니다.