~/tech-blog/category/spring — zsh
지금 --명이 보고 있습니다오늘 --누적 --
홈 / 주제

Spring 48 posts

트랜잭션, AOP 프록시, 테스트, 캐시 등 Spring 프레임워크를 실무 관점에서 정리한 글들입니다.

SPRING

실무에서 잘못 사용하고 있던 Transaction

실무 프로젝트 전반에 REQUIRES_NEW가 걸려 있던 원인을 프록시 패턴과 롤백 시점, 컨트롤러에 걸린 AOP 트랜잭션 설정에서 찾아 분석한 과정을 정리합니다.

2024.09.21 · b63427e · Spring — 8 min
SPRING

Spring Annotation 그리고 Custom Annotation

@Component에 붙은 Target, Retention 같은 메타 어노테이션의 의미와, @Service처럼 @Component를 품은 어노테이션을 Spring이 ClassPathBeanDefinitionScanner의 doScan으로 찾아 빈으로 등록하는 과정을 정리합니다.

2024.09.13 · b63427e · Spring — 5 min
SPRING

@Transactional 롤백이 안 되는 일을 실제로 겪다

같은 서비스 안에서 @Transactional 메서드를 자기 호출해 롤백이 안 되는 문제를 실제 운영 코드에서 겪고, 트랜잭션 이름을 직접 확인하며 별도 서비스로 분리해 해결한 과정을 기록합니다.

2023.08.14 · b63427e · Spring — 2 min
SPRING

@Transactional 롤백 안 되는 원인 [프록시]

같은 서비스 안에서 @Transactional 메서드를 자기 호출하면 프록시를 거치지 않아 REQUIRES_NEW가 적용되지 않고 일괄 롤백되는 원인과, 서비스 분리로 해결하는 방법을 흐름도와 함께 정리합니다.

2023.08.04 · 1354ac5 · Spring — 4 min
SPRING

@Transactional try ~ catch 롤백 안 되는 원인

@Transactional 안에서 try ~ catch로 예외를 잡으면 롤백이 동작하지 않는 원인을 TransactionAspectSupport와 rollbackOn 내부 동작으로 분석하고, catch에서 Unchecked Exception을 다시 던지는 해결 방법을 정리합니다.

2023.07.29 · b63427e · Spring — 6 min
SPRING

Bean Validation으로 요청 값 검증하기

Bean Validation의 @NotNull, @NotBlank, @Min, @Size, @Pattern 같은 검증 어노테이션 종류와, @Valid로 요청 값을 검증하는 흐름과 사용 예시를 정리합니다.

2023.03.22 · b63427e · Spring — 4 min
SPRING

@JsonIgnoreProperties(ignoreUnknown=true)

Jackson의 @JsonIgnoreProperties로 특정 프로퍼티를 직렬화·역직렬화에서 제외하는 방법과, ignoreUnknown=true로 클래스에 없는 JSON 프로퍼티를 무시해 역직렬화 오류를 막는 방법을 정리합니다.

2023.03.19 · b63427e · Spring — 4 min
SPRING

RestTemplate 이란, 메소드, 사용예시

Spring이 제공하는 HTTP 클라이언트 RestTemplate의 특징과 주요 메서드를 정리하고, exchange()로 요청을 보내는 예시와 응답 상태에 따라 예외가 처리되는 흐름을 그림과 함께 설명합니다.

2023.03.09 · b63427e · Spring — 4 min
SPRING

테스트에서 만난 NoUniqueBeanDefinitionException

트랜잭션 매니저 빈이 여러 개 등록된 환경에서 테스트 코드가 NoUniqueBeanDefinitionException을 남긴 원인과, @Transactional에 트랜잭션 매니저 이름을 지정해 해결한 과정을 정리합니다.

2022.12.22 · b63427e · Spring — 3 min
SPRING

@Transactional 이란? 트랜잭션 성질

트랜잭션의 ACID 성질과 @Transactional의 propagation, isolation, rollbackFor, noRollbackFor, timeout, readOnly 옵션을 예제 흐름도와 함께 정리합니다.

2022.11.30 · b63427e · Spring — 10 min
SPRING

Ehcache 사용방법

카테고리 캐시 작업을 하며 정리한 Ehcache 사용 방법으로, ehcache.xml 캐시 속성과 Spring Boot의 CacheManager 설정, @Cacheable로 조회 결과를 캐시하는 흐름을 그림과 함께 정리합니다.

2022.11.17 · b63427e · Spring — 5 min
SPRING

self-invocation

같은 클래스 내부 호출에서 @Transactional이 적용되지 않는 self-invocation 문제의 원인과, REQUIRES_NEW 메서드를 하위 컴포넌트로 분리해 안전하게 쓰는 방법, 커넥션 점유 주의점을 정리합니다.

b63427e · Spring — 9 min
SPRING

처음 쓰는 스프링 웹 플럭스

골든크로스·데드크로스 자동매매 프로젝트를 구성하며 Spring MVC의 Thread-per-Request 모델과 WebFlux의 이벤트 루프 모델을 흐름도로 비교하고, CPU·I/O 집약적 작업에서의 차이와 WebFlux를 선택한 이유를 정리합니다.

b63427e · Spring — 7 min
● main 231 posts UTF-8 LF © 2026 코징 RSS · GitHub