본문 바로가기

트랜잭션2

Spring AOP 간단 개념정리 Spring은 Spring Triangle이라고 부르는 세 가지 개념을 제공해준다. 각각 IoC, AOP, PSA를 일컫는다. 이 중 AOP에 대해 정리해보려고 한다. AOP(Aspect Oriented Programing)는 관점 지향 프로그램이라고도 한다. 즉, 관점이 같은 코드가 반복되지 않도록 모듈화하는 프로그래밍 패러다임이다. 이러한 Spring AOP는 프록시 패턴이라는 디자인 패턴을 사용해서 AOP효과를 낸다. 프록시 패턴은 실제 기능을 수행하는 객체 대신에 가상의 객체를 사용해 로직의 흐름을 제어하는 디자인 패턴이다. A클래스가 Spring AOP의 대상이라면 A클래스의 빈이 만들어질 때 Spring AOP가 프록시를 자동으로 만들고 원본인 A클래스 대신 프록시에 빈을 등록한다. 그리고 원.. 2021. 1. 26.
@Transactional / 트랜잭션 트랜잭션 정의 트랜잭션(Transaction)은 데이터베이스(DB)의 상태를 변환시키는 하나의 논리적 기능을 수행하기 위한 작업의 단위 또는 한꺼번에 모두 수행되어야 할 일련의 연산들을 의미한다. 트랜잭션 사용 이유 DB에 insert, update 등 작업을 여러번 하게되는 로직이 있을 경우 중간에 실패하게되면 잘못된 값이나 필요없는 값이 저장될 수 있다. 이 경우 트랜잭션을 사용하여 모든 로직이 정상적으로 완료되지 않는다면 Rollback 하거나 모두 완료되야만 Commit 하여 데이터의 잘못된 저장을 막을 수 있다. 스프링에서 사용방법 어노테이션 @Transactional 을 이용할거면 손쉽게 설정 후 사용가능하다. xml에 아래 내용만 추가해주면 된다. 주요 속성 isolation -> Trans.. 2020. 3. 16.