본문 바로가기
소프트웨어 개발/소프트웨어 설계 패턴

ORM 개념 및 관련 라이브러리

by 인생은즐겁게 2022. 12. 11.
반응형

ORM은 객체 지향 언어에서 관계형 데이터베이스 작업을 단순화하기 위한 추상화입니다. 
기본적으로 SQL을 직접 사용하지 않고 데이터를 생성, 검색 및 업데이트할 수 있는 일련의 클래스 및 메서드입니다.

장점

1.  한 곳에서만 데이터 모델을 작성할 수 있으므로 코드를 업데이트, 유지 관리 및 재사용하기가 더 쉽습니다.

2. 데이터베이스 조작을 위한 많은 작업이 자동으로 수행되며, 관계 유지 및 데이터 가져오기도 자동으로 수행되는 경우가 있습니다.

3. MVC(Model-View-Controller) 구조로 코드를 작성해야 하므로 결국 애플리케이션 코드가 더 깔끔해집니다.


4. 형식화된 SQL 문을 작성할 필요가 없으며 복잡한 관계형 쿼리는 ORM에서 처리합니다.

5. 준비된 명령문 또는 트랜잭션을 사용하여 새니타이징하는 것은 메서드를 호출하는 것만큼 쉽습니다.

 


단점
1. ORM을 사용하기 위한 학습 시간이 필요합니다.
2. 복잡한 엔티티 관계가 필요할 경우 오히려 로우 쿼리로 관리해야 할 상황이 있습니다.




[ORM - 관련 라이브러리]

java orm 라이브러리
hibernate  : https://hibernate.org/
spring-data-jpa  : https://spring.io/projects/spring-data-jpa/
ebean ORM : https://ebean.io/


PHP용 ORM 라이브러리


opis : https://opis.io/
cycle-orm : https://cycle-orm.dev/
doctrine : https://www.doctrine-project.org/


c#용 ORM 라이브러리
https://learn.microsoft.com/en-us/ef/

반응형

댓글