동시성제어? 왜 두번해야함?
·
DB/RDBMS
DB가 다 해준다며? 그런데 왜 스프링에서도 동시성 제어를 해야 하지? 📚 시작하며 요즘 DB 스터디에서 『Real MySQL 8.0』을 읽으면서 MySQL에 대한 이해를 깊게 하고 있는데, 진짜 놀란 게 하나 있었다.“MySQL… 얘 동시성 제어에 진심이구나?” 정말 생각보다 정교하게 락(Lock)을 걸고,MVCC, 세마포어, Undo 로그, 트랜잭션 격리 수준 같은 기능으로동시에 발생하는 수많은 쿼리를 정확하게 처리하고 있었다. 그러던 중, 내가 참여 중이던 해커톤 프로젝트에서스프링 애플리케이션 쪽에서도 동시성 제어가 필요한 상황이 생겼다. 그래서 의문이 들었다.   ❓ 궁금했다 “DB에서 이렇게 철저하게 동시성 제어를 해주는데,왜 굳이 스프링에서도 락을 걸어야 하지?” 처음엔 이게 잘 이해되지 않..
@Enumerated ?
·
Spring/Annotations
Inflearn 강의 도중 @Enumerated 라는 어노테이션을 마주했고이는 처음보는 어노테이션이었기에 짚고 넘어가고 싶었습니다. 마주한 코드는 다음과 같습니다.@Enumerated@Enumerated는 JPA(Java Persistence API)에서 사용되는 어노테이션으로,Enum 타입을 데이터베이스에 매핑할 때 사용됩니다. Enumerated 어노테이션은 (EnumType.String) 구문을 통해서Enum 타입을 데이터베이스 컬럼에 Enum 값을 숫자(Ordinal)로 저장할지, 문자열(String)로 저장할지를 결정하고,JPA 엔티티 클래스에서 Enum 필드를 데이터베이스와 매핑할 때 필요하게 됩니다.@Enumerated의 주요 옵션@Enumerated는 EnumType이라는 설정값을 통해 작..