-
TypeORM에 대한 간단한 소개Back-end/Database 2023. 12. 1. 18:42반응형
TypeORM 이란?
- TypeORM은 NodeJS, Browser, Cordova, PhoneGap, Ionic, React Native, NativeScript, Expo, Electron 플랫폼에서 실행할 수 있다.
- TypeScript 및 JavaScript(ES5, ES6, ES7, ES8)로 사용할 수 있는 객체관계형 매퍼 라이브러리이다.
- MySQL, PostgreSQL, MariaDB, SQLite, MS SQL Server, Oracle, SAPHana 및 WebSQL과 같은 여러 데이터베이스에 대해 지원한다.
- 최신 JavaScript 기능을 지원하고 소규모 애플리케이션부터 대규모 엔터프라이즈 애플리케이션까지 데이터베이스를 사용하는 모든 종류의 애플리케이션을 개발하는 데 도움이 되는 추가 기능을 제공하는 것을 목표로 한다.
ORM 이란?
- Object Relatiional Mapping 을 뜻한다.
- 객체와 관계형DB를 서로 매핑 시킨다.
- 객체 지향의 경우 class를 사용하게 되고, 관계형 DB는 테이블을 사용하게 되는데 이 때 객체 모델과 관계형 모델 간의 불일치가 나타나는 문제를 해결해준다.
- 객체와 관계형 데이터베이스의 데이터를 자동으로 변형 및 연결하는 작업을 해준다.
- ORM을 이용한 개발은 객체과 데이터베이스의 변형에 유연하게 사용할 수 있다.
TypeORM과 Vanila Javascript 비교하기
Vanila Javascript(Pure Javascript)을 사용한 예시
db.query('SELECT * FROM boards WHERE title="Hello" AND status="PUBLIC"', (err, result) => { if(err) throw new Error('Error') boards = result.rows; });
vs
TypeORM을 사용한 예시
const boards = Borard.find({title: 'Hello', status: 'PUBLIC'})
위 예시를 보면 알겠지만 훨씬 간단하게 데이터에 저장, 삭제, 업데이트 등을 할 수 있다.
TypeORM 특징과 장점
- 모델을 기반으로 데이터베이스 테이블 체계를 자동으로 생성한다.
- 데이터베이스에서 개체를 쉽게 삽입, 업데이트, 삭제 할 수 있다.
- 테이블 간의 일대일, 일대 다, 다대 다 매핑을 만든다.
- 간단한 CLI 명령을 제공한다.
- ORM 프레임워크를 사용하기 쉽다.
- 다른 모듈과 쉽게 통합 가능하다.
반응형