본문 바로가기
Spring/JPA

JPA Programming

by y.j 2022. 5. 1.
728x90

ORM(Object Relational Mapping)이란?

DB와 application간에 데이터 접근 및 조작을 하기 위해서 java object와 DB사이를 mapping해 줄 수 있는 layer가 필요하다. 이 다리 역할을 해주는 것이 Object Relational Mapping, ORM, 이다. Spring Framework는 JPA, Hibernate, DAO와 transaction을 통합하여 관리 할 수 있도록 지원해준다. 

 

Spring Framework의 장점

Easier testing. 

IoC접근은 Hibernate SessionFactory instances, JDBC DataSource instances, transaction managers, and mapped object의 설정과 구현을 쉽게 하도록 도와준다. 또, persisitence-related 코드들의 일부분만을 독립적으로 테스트하는 것을 쉽게 할 수 있다.

 

Common data access exceptions. 

Spring은 ORM tool로 exceptions들을 감싸고 있어 개발자가 만든 소유 exception처리를 runtime DataAccessException hierarchy로 바꿔 사용 할 수 있다. 즉, 사용자 exception 선언과 throw들을 필요한 만큼 정의하고 trap할 수 있도록 한다.

 

General resource management.

Spring application context는 Hibernate SessionFactory instances, JPA EntityManagerFactory instances, JDBC DataSource instances, and other related resources의 설정과 위치를 다룬다. persistence resource들을 쉽고 효율적으로 변화하고 관리하도록 한다.

 

Integrated transaction management.

@Transactional annotation을 가진 ORM코드나 XML에 AOP advice에 명시하여 ORM코드를 작성 할 수 있다. 이 2가지 모두 transaction의 의미성이나 exception을 다룰 수 있고, ORM-related코드에 영향없이 다양한 transaction manager를 통제 할 수 있다.

 

728x90

'Spring > JPA' 카테고리의 다른 글

Entity의 기본속성  (0) 2022.06.05
JPA Repository  (0) 2022.06.05
Entity  (0) 2022.05.29

댓글