일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- git
- aop
- 스프링부트
- 스프링
- 관점지향프로그래밍
- network
- aspect
- Interceptor
- Spring Security
- proxy pattern
- exception
- Redis
- request
- java
- Filter
- response
- http
- 객체지향프로그래밍
- SQL
- 자바
- MYSQL
- 스프링 시큐리티
- Spring
- OOP
- RestControllerAdvice
- spring boot
- 인터셉터
- mybatis
- 디자인패턴
- 트랜잭션
- Today
- Total
목록Transaction (2)
장쫄깃 기술블로그
Transaction, 트랜잭션 트랜잭션(Transaction) 이란, 데이터베이스의 상태를 변경시키기 위해 수행하는 작업 단위이다. 하나의 작업을 수행하기 위해 필요한 데이터베이스 연산 기능들을 모아놓은 것이며 분리되지 않도록 하여 작업의 완전성을 보장한다. 트랜잭션을 통해서 데이터베이스의 회복과 병행 제어가 가능하다. 즉, 데이터베이스에서 오류가 발생하는 경우의 빠른 회복이나, 여러 사용자가 동시에 데이터베이스를 사용할 수 있도록 제어해주는 중요한 역할을 한다. 데이터베이스의 연산을 SQL문으로 표현한다면, 하나의 작업을 수행하는 SQL문의 집합으로 생각할 수도 있다. 트랜잭션의 특징 트랜잭션이 성공적으로 처리되기 위해서는 ACID라는 네 가지 성질을 만족해야 한다. 1. 원자성 (Automicity..
들어가며 프로젝트 진행 중 MySQLTransactionRollbackException, SQLException이 발생하는 경우가 있었다. 해당 프로젝트는 AOP를 이용하여 트랜잭션을 적용한 상태였다. 그런데 해당 예외가 발생했을 때 정상적으로 Rollback이 발생하지 않는 상황이 발생했다. 이러한 문제를 조사하고 해결하며 참고한 자료를 정리해보았다. Rollback 이란? Rollback이란 트랜잭션의 원자성이 깨질 때, 즉 하나의 트랜잭션 처리가 비정상적으로 종료되었을 때의 상태를 뜻한다. Rollback이 이뤄진다면 트랜잭션을 다시 실행하거나 부분적으로 변경된 결과를 취소할 수 있다. 자세한 내용은 해당 글을 참고하면 된다. 링크 : https://jangjjolkit.tistory.com/4 [..