프로그래밍/Database

프로그래밍/Database

[Database] ORM 개념, JPA vs JDBC

ORM 을 이해하기 위해서는 먼저 영속성이라는 개념을 이해해야 한다. 1. Persistence - 영속성 영속성은 데이터를 생성했던 프로그램이 종료되더라도 데이터가 없어지지 않는 것을 말한다. 예를 들어서, 일기장 앱에서도 어플을 켰다가 꺼도 일기가 지워지지는 않는다. 이것이 바로 데이터의 영속성이라고 말을 할 수 있다. 데이터의 영속성은 즉, 결국 DB를 사용해야 한다는 뜻이다! 1.1. Persistence Framework 위에서 말했듯이 결국 DB인 영속성 있는 데이터를 사용하기 편하게 해주는 것이 바로 Persistence Framework이다. Persistence Framework 는 DB 와의 연동되는 시스템을 빠르게 개발하고, 안정적인 구동을 보장해 주는 프레임워크를 말한다. 1.1.2..

프로그래밍/Database

[Database] 트랜잭션 (Transaction) + 경쟁하면 생기는 문제점 3가지

1. 트랜잭션 (Transaction) 데이터베이스의 상태를 변화시키기 위해 수행하는 작업단위 (1) 상태 변화 데이터베이스의 상태를 변화시킨 다는 것은 쿼리문을 가지고 데이터베이스에 접근해 수정하고, 삭제하는 것을 말한다. 백엔드 개발을 하면서 crud 작업을 수행하며 이와 같은 작업들이 모두 데이터베이스의 상태를 변화시키게 된다. (2) 작업 단위 작업단위는 프로젝트별, 상황별 정의하기 나름이다. 작업단위 예시 ex) 트랜잭션 : 오늘 날씨에 대한 일기 작성하기 오늘 일기 작성하기라는 작업 단위를 두었다면, 이 하나의 작업단위 내에는 (1) 오늘 날씨 데이터를 가져오기, (2) 일기를 DB에 저장하기 이렇게 두 가지 단위로 나눌 수 있다. 이 (1) (2) 를 수행한 것이 하나의 데이터베이스 상태를 ..

dbguswn
'프로그래밍/Database' 카테고리의 글 목록