반응형
ORM(Object Relational Mapping)
- 정의
- 객체로 연결을 해준다 라는 의미
- SQL언어가 아닌 Application 개발 언어로 DB에 접근 가능하게 하는 툴
- Persistence (영속성) API
- 데이터를 생성한 프로그램이 종료되더라도 사라지지 않는 데이터의 특성
- 영속성을 갖지 않는 데이터는 단지 메모리 상에서만 존재하기 때문에 프로그램 종료 후 모두 자동 소멸
- Persistence Framework
- 기존의 JDBC 프로그래밍의 복잡함과 번거로움 없이 간단한 작업만으로 DB와 연동되는 시스템을 빠르게 개발할 수 있으며 안정적 구동 보장
- SQL Mapper와 ORM으로 구분
- SQL Mapper: MyBatis, iBatis
- ORM: JPA(인터페이스), Hibernate(JPA 구현체)
- 장점
- SQL 중심적 개발에서 객체중심으로 개발하여 비즈니스 로직에 집중할 수 있음
- SQL의 이해가 부족해도 코드레벨로 커버 가능
- 재사용 및 유지보수의 편리성이 증가
- DBMS에 대한 종속성 감소
- 단점
- ORM만으로는 복잡한 연산 수행이 어려워 필요시 SQL 사용 必
반응형
'Spring' 카테고리의 다른 글
Jackson에서 Boolean 직렬화 시 is가 사라지는 문제 (0) | 2022.03.12 |
---|---|
자바 클래스 이름에 Impl을 사용하지 말아야 하는 이유 (7) | 2021.02.07 |