Spring(5)
-
[Spring] @Transactional 트랜잭션 전파 속성 개념 및 동작 과정(Propagation)
오늘은 트랜잭션의 전파 속성(Transaction Propagation) 개념 및 동작 과정에 대해서 알아보자. 먼저, 트랜잭션 전파 속성에 대해 알아보기 전 트랜잭션에 대해 알고 있어야 한다.만약, 잘 모르겠다면 아래 글을 참고해서 이해하고 이번 글을 보는 것을 추천한다.2025.01.08 - [DB] - [DB] 트랜잭션(Transaction)이란? [DB] 트랜잭션(Transaction)이란?트랜잭션(Transaction)이란?: 데이터베이스의 상태를 변화시키기 위해 수행하는 작업 단위이다.즉, 데이터베이스의 상태를 변화시킨다는 것은 SELECT, INSERT, UPDATE, DELETE 등과 같은 질의어(SQL)를 사용mingstory-tech.tistory.com 간략하게 설명하자면, 트랜잭션은..
2025.09.16 -
[Spring] AOP 기본 개념과 동작 원리(Proxy), 적용 방법
오늘은 AOP의 기본 개념과 동작 원리, 적용 방법에 대해서 알아보자.먼저, AOP(Aspect Oriented Programming)란?: 스프링 프레임워크에서 제공하는 기능 중 하나로, 관점 지향 프로그래밍을 지원하는 기술이다.즉, 소프트웨어 개발에서 핵심 비즈니스 로직(주문, 결제 등)과 공통적으로 필요한 부가 기능(로깅, 보안, 트랜잭션 관리 등)을 분리하여 개발하는 프로그래밍 패러다임을 의미한다.- OOP(Object-Oriented Programming)는 객체 단위로 관심사를 분리하지만, AOP는 여러 객체에 걸쳐 흩어진 횡당 관심사(Cross-cutting Concern)를 모듈화 하여 관리한다. 여기서 잠깐,관점 지향 프로그래밍(Aspect Oriented Programming, AOP)..
2025.09.01 -
[Spring] Filter 와 Interceptor의 개념 및 차이점
JWT 등 인증 같은 공통된 로직을 처리할 때 공통된 작업을 처리하고 중복 코드를 제거할 수 있도록 Spring에서 많은 기능들을 제공한다.그중 대표적인 필터(Filter)와 인터셉터(Interceptor) 개념 및 차이점에 대해서 알아보자. 먼저, 필터(Filter)란?: Java Servlet(서블릿)에서 제공하는 기능으로, 디스패처 서블릿에 요청이 전달되기 전/후 URL 패턴에 맞는 모든 요청에 대해 부가적인 작업을 처리할 수 있는 기능을 제공한다. 만약, 디스패처 서블릿(Dispatcher Servlet)을 잘 모르겠다면?아래 글을 참고해서 이해하고 이번 글을 보는 것을 추천한다!2025.07.28 - [Spring] - [Spring] 디스패처 서블릿(Dispatcher Servlet) 개념 및..
2025.08.05 -
[Spring] 디스패처 서블릿(Dispatcher Servlet) 개념 및 동작 과정
오늘은 Spring mvc의 핵심 기능인 디스패처 서블릿에 대해서 정리해보려고 한다.먼저, 디스패처 서블릿(Dispatcher Servlet)이란?: HTTP 프로토콜로 들어오는 모든 요청을 가장 먼저 받아 적합한 컨트롤러에게 위임해 주는 프론트 컨트롤러(Front Controller)라고 한다.즉, 클라이언트로부터 어떠한 요청이 들어오면 Tomcat과 같은 서블릿 컨테이너가 요청을 받게 되고, 모든 요청을 프론트 컨트롤러인 디스패처 서블릿이 가장 먼저 받게 된다. 그럼 디스패처 서블릿은 공통적인 작업을 먼저 처리한 후 해당 요청을 처리해야 하는 컨트롤러를 찾아 작업을 위임하는 것이라고 생각하면 된다.여기서 말하는 프론트 컨트롤러(Front Controller)란?: 서블릿 컨테이너의 제일 앞에서 서버로..
2025.07.28 -
[Spring] 스프링 컨테이너(Spring Container)와 스프링 빈(Spring Bean) 개념
스프링 컨테이너 (Spring Container)란? : 자바 객체의 생명주기를 관리하며, 생성된 자바 객체들에게 추가적인 기능을 제공하는 역할 (빈을 싱글톤으로 관리한다.) => 싱글톤 컨테이너, ioc 컨테이너라고도 불린다. 스프링 컨테이너에서의 자바 객체? = 스프링 빈(Bean)이라고 부른다. 즉, 스프링 빈(Bean)은 스프링 컨테이너에서 관리하고 있는 자바 객체이다. 그렇다면 Bean을 등록하는 방법은? 1. @Component : Class(클래스) 단위에 붙인다. (자동) - @Component 어노테이션을 사용하면 @Bean을 따로 등록하지 않고 사용할 수 있다. (자동으로 빈 등록) - 하위 어노테이션은 @Cofiguration, @Controller, @Service, @Repsoit..
2023.03.18