loading
본문 바로가기 메뉴 바로가기
⚠️Spring 예외 처리 완전 정복 - @ControllerAdvice, @ExceptionHandler, 그리고 실무 예외 전략

✅1. 예외 처리의 필요성소프트웨어는 실패하지 않는 것이 아니라, 실패를 어떻게 다루느냐가 중요하다.Spring 애플리케이션에서는 예외를 제대로 처리하지 않으면클라이언트에게 500 에러가 그대로 노출되거나사용자 친화적인 메시지를 전달하지 못하고서비스 전체가 중단될 수 있음-> 그래서 예외 처리를 계층화하고 구조화하는 전략이 필요함 2. 예외 처리 전략의 계층화계층처리 방식Controller@ExceptionHandler, @ControllerAdivceService커스텀 예외 발생 (throw new..)Global필터/인터셉터에서의 처리, 예외 로깅🎯3. Spring MVC에서 예외가 발생했을 때 흐름컨트롤러/서비스에서 예외 발생HandlerExceptionResolver가 예외를 가로채 처리등록된 ..

IT/Spring 2025. 6. 18. 20:58
🔄 Spring의 @Transactional 완전 정복 - 개념, 원리, 동작 방식, 트러블 슈팅까지

✅ 1.트랜잭션이란?하나의 작업 단위를 원자성 있게 처리하기 위한 논리적 작업 묶음모두 성공하거나, 하나라도 실패하면 전체를 롤백해야 함 📌 ACID 원칙항목설명Atomicity(원자성)전부 선공 or 전부 실패 (불완전 상태 금지)Consistency(일관성)작업 후 데이터 정합성 보장Isolation(격리성)동시에 실행되는 트랜잭션 간 간섭 없음Durability(지속성)커밋된 트랜잭션은 영구 반영됨💉 2. Spring의 @Transational이란?Spring AOP 기반으로 구현된 선언적 트랜잭션 처리 방식특정 메서드나 클래스에서 트랜잭션 범위와 롤백/커밋 조건을 선언적으로 지정할 수 있음@Transactionalpublic void order() { saveOrder(); save..

IT/Spring 2025. 6. 11. 19:50
Spring AOP 완전 정복 - 핵심 로직과 횡단 관심사의 완전 분리

1. AOP란 무엇인가?📌AOP의 정의AOP는 공통된 관심사를 분리하여 핵심 로직과 독립적으로 관리할 수 있도록 하는 프로그래밍 패러다임이다. 🎯AOP가 필요한 이유OOP(Object-Priented Programming)만으로는 다음 같은 문제를 해결하기 어렵다.로킹, 트랜잭션, 보안 체크, 캐싱, 성능 측정 등은 모든 비즈니스 로직에 반복해서 들어감이러한 횡단 관심사(Cross-cutting concerns)가 중복 코드 유발 + 유지보수 난이도 증가➡️ AOP는 이 관심사를 핵심 로직에서 분리해 재사용성과 응집도를 높임 🧩 2. AOP 핵심 용어 정리용어설명Aspect횡단 관심사의 모듈화 단위 (클래스)Join PointAdvice가 적용될 수 있는 지점 (ex: 메서드 실행)AdviceJoi..

IT/Spring 2025. 6. 5. 17:57
✅ 테스트 전략과 TDD 완전 정복 - 테스트는 왜, 어떻게, 무엇부터 할 것인가?

시스템이 커질수록, 기능이 많아질수록 중요한 건 "내가 만든 기능이 제대로 동작하는가?", 그리고 "이전 기능을 깨뜨리지 않았는가?"라는 확신이다. 이 확신을 만들어주는 것이 바로 테스트 코드이고, 이걸 개발의 중심에 두는 방식이 TDD(Test-Driven Development)다.1️⃣ TDD란 무엇인가?TDD는 말 그대로 테스트를 먼저 작성하고 그 다음 코드를 구현하는 개발 방법론이다. 전통적인 개발 흐름과는 순서가 정반대이다.📌 TDD 개발 순서 (Red -> Green -> Refactor)Red - 실패하는 테스트 작성Green - 테스트가 통과하도록 최소한의 코드 작성Refactor - 중복 제거, 구조 개선이 과정을 끊임없이 반복하며 안정적인 기능 개발을 이어나가는 방식이다.2️⃣ TDD..

IT/SW Dev Methodology 2025. 5. 26. 19:12
MSA와 DDD는 같은 말일까? 다른 말일까?

소프트웨어 구조와 설계 사이,, 그 미묘한 경계에서✅ 들어가며최근 MSA 전환에 대해 파고들고 있는데 문득 DDD랑 다른게 무엇인가 MSA는 아키텍처이고 DDD는 디자인 기법 중 하나인가?DDD는 단순 MSA로 가기 위한 수단 중 하나라고 생각하면 될까? 등 다양한 고민들이 쏟아졌기에 해당 글을 실무에서 어떤 관점으로 받아들여야 하는지 고민하는 개발자들을 위한 정리정도로 받아들이면 좋을 것 같다:)✅ MSA와 DDD, 정확히 무슨 차이일까?구분MSA (Microservice Architecture)DDD (Domain-Driven Design)개념시스템을 작은 독립 서비스로 분리하는 아키텍처 스타일복잡한 도메인을 잘 이해하고 모델링 하는 설계 접근 방식목적독립 배포, 확장성, 팀 간 분리 등 아키텍처 이..

IT/Architecture 2025. 5. 20. 20:25
DDD 완전 정복 - MSA 서비스 분리의 핵심, 도메인 모델링은 어떻게 하는가?

MSA 아키텍처 설계를 고민하다 보면 반드시 마주치는 개념이 있다.바로 DDD, Domain-Driven Design (도메인 주도 설계)이다.DDD는 단순한 설계 기법이 아니다.비즈니스와 개발이 완전히 같은 언어를 공유하면서 시스템을 설계하는 철학이다.이번 포스팅에서는 DDD가 무엇인지, 왜 필요한지, 실제로 도메인을 어떻게 모델링하고 서비스로 분리할 수 있는지까지 A to Z로 전부 정리해보겠다.1️⃣ DDD란 무엇인가?DDD(Domain-Driven Design)는 복잡한 비즈니스 로직을 효과적으로 다루기 위한 설계 방법론이다. 📌 키워드만 간단히 정리하면Domain (도메인) : 비즈니스 영역 (ex. 주문, 결제, 정산 등)Model (모델) : 도메인을 코드로 옮긴 표현Ubiquitous L..

IT/SW Design 2025. 5. 20. 19:39
이전 1 ··· 10 11 12 13 14 15 16 ··· 23 다음
이전 다음

소개 및 문의 · 개인정보처리방침 · 면책조항

© 2026 때부자

티스토리툴바

운영자 : 아벡이
제작 : 아로스
Copyrights © 2022 All Rights Reserved by (주)아백.

※ 해당 웹사이트는 정보 전달을 목적으로 운영하고 있으며, 금융 상품 판매 및 중개의 목적이 아닌 정보만 전달합니다. 또한, 어떠한 지적재산권 또한 침해하지 않고 있음을 명시합니다. 조회, 신청 및 다운로드와 같은 편의 서비스에 관한 내용은 관련 처리기관 홈페이지를 참고하시기 바랍니다.