본 글은 assertThrows 메서드를 공부한 지식을 정리한 글입니다. 서론JPA에서 @Vesion 어노테이션을 사용하여 낙관적 락을 구현하고, 낙관적 락을 통한 동시성 제어를 확인했습니다. [JPA] JPA에서 낙관적 락(Optimistic Locking) 구현하기 (@Version)서론낙관적 락은 데이터 충돌이 드물 것이라고 가정하고, 데이터를 수정할 때만 충돌을 검사합니다. 트랜잭션이 데이터를 수정하기 전까지는 락을 걸지 않고, 수정 시점에 데이터가 변경되pixx.tistory.com Test클래스에서 assertThrows()메서드로 예외를 손쉽게 처리 했는데, 코드 중 assertThrows() 메서드에 대해서 정리하고자 합니다. assertThorws란❓assertThrows()는 JUnit..
서론낙관적 락은 데이터 충돌이 드물 것이라고 가정하고, 데이터를 수정할 때만 충돌을 검사합니다. 트랜잭션이 데이터를 수정하기 전까지는 락을 걸지 않고, 수정 시점에 데이터가 변경되지 않았는지 확인합니다. [DB] DB Lock이란 무엇일까❓ : 데이터 무결성을 지키는 다양한 DB Lock알아보기오늘날의 데이터베이스 시스템은 수많은 사용자와 프로세스가 동시에 데이터를 접근하고 수정하는 복잡한 환경에서 운영됩니다. 이러한 환경에서 데이터의 무결성과 일관성을 유지하는 것은pixx.tistory.com 본 글에서는 JPA의 @Version 어노테이션을 사용하여 낙관적 락을 구현하고, 낙관적 락을 사용하여 동시성 문제를 해결하는 동작을 확인해보겠습니다. @Version 어노테이션이란 ❓@Version 어노테이션..
본 글을 DB Lock에 대해서 공부한 지식을 정리한 글입니다. 비관적 락의 문제점 비관적 락(Pessimistic Lock)을 JPA를 통해서 확인을 하다가 궁금한점이 생겼는데, DB Lock의 필요성 중 업데이트 손실이 있습니다.업데이트 손실은 두 개 이상의 트랜잭션이 동일한 데이터를 읽고, 그 데이터를 기반으로 수정 작업을 수행할 때 발생합니다. 이러한 문제를 해결하기 위해서 DB Lock을 통하여 접근제어를 하면 데이터 무결성 문제를 해결할 수 있습니다. [JPA] 비관적 락(Pessimistic Lock)을 통한 동시성 제어 및 업데이트 손실(Lost Update)확인하기서론비관적 락은 데이터 충돌이 자주 발생할 것으로 가정하고, 데이터에 접근할 때마다 잠금을 걸어 다른 트랜잭션이 동시에 접근..
서론비관적 락은 데이터 충돌이 자주 발생할 것으로 가정하고, 데이터에 접근할 때마다 잠금을 걸어 다른 트랜잭션이 동시에 접근하지 못하게 합니다. [DB] DB Lock이란 무엇일까❓ : 데이터 무결성을 지키는 다양한 DB Lock알아보기오늘날의 데이터베이스 시스템은 수많은 사용자와 프로세스가 동시에 데이터를 접근하고 수정하는 복잡한 환경에서 운영됩니다. 이러한 환경에서 데이터의 무결성과 일관성을 유지하는 것은pixx.tistory.com [JPA] @Lock 어노테이션이란 무엇일까❓: 다양한 LockModeType 잠금 모드@Lock 어노테이션이란❓@Lock 어노테이션은 Spring Data JPA에서 제공하는 기능으로, JPA 리포지토리 메소드에 적용하여 특정 데이터베이스 쿼리에 대한 잠금 모드를 지..