카테고리 없음
ORM, SQL, MVC
BottleCoffin
2022. 6. 5. 18:57
ORM(Object Relational Mapping)
ORM(Object Relational Mapping)이란, 객체지향 패러다임을 이용하여 데이터베이스로부터 데이터를 쿼리하고 조작할 수 있도록 해주는 기술이다.
즉, 객체와 데이터베이스를 연결(매핑)해주는 역할을 한다.
ORM 라이브러리는 우리가 사용하는 언어로 쓰인 완전히 평범한 라이브러리로, 데이터를 조작하기 위해 필요한 코드를 캡슐화 하고 있기 때문에 데이터를 조작하기 위해 더 이상 SQL 쿼리문을 사용하지 않아도 된다.
우리가 사용하고 있는 그 언어를 통해서 객체와 직접적으로 상호작용하게 되는 것이다. SQL 쿼리문 작성의 기술적인 부분은 ORM 라이브러리가 맡아준다.
JAVA에서는 ORM을 위한 자바 EE 표준으로 JPA를 사용하고 구현체로는 Hibernate, spring에서는 Spring Data JPA를 사용한다.
SQL
SQL은 Structured Query Language (구조적 질의 언어)의 줄임말로, 관계형 데이터베이스 시스템(RDBMS)에서 자료를 관리 및 처리하기 위해 설계된 언어이다. SQL의 표준은 ANSI SQL이다.
SQL 문법의 종류
- DDL(Data Definition Language, 데이터 정의 언어)
각 릴레이션을 정의하기 위해 사용하는 언어 (CREATE, ALTER, DROP...) - DML(Data Manipulation Language, 데이터 조작 언어)
데이터를 추가/수정/삭제하기 위한, 즉 데이터 관리를 위한 언어 (SELECT, INSERT, UPDATE...) - DCL(Data Control Language, 데이터 제어 언어)
사용자 관리 및 사용자별로 릴레이션 또는 데이터를 관리하고 접근하는 권한을 다루기 위한 언어(GRANT, REVOKE...)
MVC
MVC (모델-뷰-컨트롤러) 는 사용자 인터페이스, 데이터 및 논리 제어를 구현하는데 널리 사용되는 소프트웨어 디자인 패턴입니다. 소프트웨어의 비즈니스 로직과 화면을 구분하는데 중점을 두고 있다. 이러한 "관심사 분리" 는 더나은 업무의 분리와 향상된 관리를 제공한다.
MVC 소프트웨어 디자인 패턴의 세 가지 부분은 다음과 같이 설명할 수 있다.
- 모델: 데이터와 비즈니스 로직을 관리
- 뷰: 레이아웃과 화면을 처리
- 컨트롤러: 명령을 모델과 뷰 부분으로 라우팅
