Jpa 와 특징
개념과 특징
ORM
- Object Relational Mapping(객체-관계-매핑)의 약자입니다
- 객체와 관계형 데이터베이스의 데이터를 자동으로 매핑해주는 것을 말합니다.
JPA 장점, 단점
- JPA란 자바 ORM 기술에 대한 API 표준 명세를 의미한다.
- Hibernate는 JPA라는 명세의 구현체이다.
- 장점
- SQL 중심적인 개발에서 객체 중심으로 개발
- SQL의 반복작업이 없어져서 생산성이 높아진다.
- 예를 들어 기존의 필드를 변경 한다면 기존 모든 SQL을 변경해야 했다면 JPA 를 사용하면 필드만 변경하면 됩니다.
- 단점
- 성능 : 직접 SQL을 호출 하는 것보다 성능이 떨어 질 수 있다.
- 세밀함 : 복잡한 통계 분석 쿼리를 메서드 호출로 처리하기 힘들다. (이러한 문제를 보완하기 위해 JPA에서 JPQL을 지원한다
트렌젹션
transaction는 데이터베이스 내에서 수행되는 작업의 최소 단위로, 데이터베이스의 무결성을 유지하며 DB의 상태를 변화시키는 기능을 수행합니다.
transaction은 하나 이상의 query를 포함해야 하고, ACID라고 칭해지는 원자성, 일관성, 고립성, 지속성의 4가지 규칙을 만족해야합니다.