
Spring을 사용하다 보면 자연스럽게 이런 표현들을 섞어 쓰게 됩니다. “Spring으로 개발한다” “Spring Boot 프로젝트다” “Spring Framework 기능이다” 하지만 이 세 가지는 같은 말이 아니고, 개념 레벨도 다릅니다. 이 글에서는 Spring

구동 시점은 애플리케이션이 실행되고 요청을 받기 전까지의 과정입니다.이 시점의 목적은 단 하나입니다.요청을 처리할 수 있는 모든 준비를 끝내는 것입니다.Spring Framework는 가장 먼저 ApplicationContext(IoC Container)를 생성합니다.

— 요청이 들어왔을 때 내부에서 자연스럽게 흐르는 과정Spring Framework를 사용하다 보면대부분의 개발자는 “요청이 들어오면 그냥 잘 처리된다”라고 느낍니다.하지만 실행 시점(Runtime)을 기준으로 내부 흐름을 따라가 보면,Spring은 아무 일도 즉흥적으

Spring을 사용하다 보면 자연스럽게 이런 질문을 하게 됩니다.왜 내부 메서드 호출에서는 @Transactional이 동작하지 않는가Service를 여러 개로 나눴는데 왜 전체 롤백이 되는가Proxy와 Transaction은 정확히 어디에서 시작되는가이 글에서는 실행

들어가며 객체지향 프로그래밍(OOP)을 공부하다 보면 가장 많이 듣게 되는 개념 중 하나가 바로 SOLID입니다. 많은 개발자가 SOLID를 암기해야 하는 다섯 가지 원칙으로만 생각하지만, 실제로는 유지보수하기 쉬운 코드를 작성하기 위한 설계 원칙입니다. 프로젝트

Java 8에서 Stream API가 등장한 이후, 컬렉션 데이터를 처리하는 방식은 크게 변화했습니다. 기존의 반복문 중심 코딩에서 벗어나 데이터를 선언형으로 처리할 수 있게 되었으며, Spring Boot 기반의 백엔드 개발에서는 Entity 조회, DTO 변환, 그

Kotlin은 Android 개발 언어라는 이미지가 강하지만, 현재는 Spring Boot 백엔드 개발에서도 널리 사용되고 있습니다. 저 역시 Java로 백엔드 개발을 시작했지만, 현재는 Kotlin을 활용하여 Spring Boot 서비스를 개발하고 있습니다.처음에는

이전 글에서는 Kotlin이 왜 등장했으며, 왜 Spring Boot 백엔드 개발에서 Kotlin을 많이 사용하는지 알아보았습니다.이번 글에서는 실제 프로젝트에서 가장 많이 사용하는 Kotlin API를 Java 코드와 비교하면서 살펴보겠습니다.단순히 API의 사용법을