WIL_0605

mileage·2022년 6월 5일
0

ORM(Object Relational Mapping)

  • 객체와 관계형 데이터베이스의 데이터를 자동으로 매핑(연결)해주는 것을 말한다.
    - 객체지향 프로그래밍은 클래스를 사용하고, 관계형 데이터베이스는 테이블을 사용한다.
    - 객체모델과 관계형모델 간 불일치가 존재한다.
    - ORM을 통해 객체 간 관계를 바탕으로 SQL을 자동으로 생성해 불일치를 해결한다.

  • ORM의 장단점

    • 객체지향적인 코드로 인해 직관적이고 비즈니스 로직에 더 집중할 수 있게한다.
    • 재사용 및 유지보수의 편리성이 증가한다.
    • DBMS에 대한 종속성이 줄어든다.
    • 완벽한 ORM으로만 서비스를 구현하기가 어렵다.
    • 프로시저가 많은 시스템에선 ORM의 객체지향적인 장점을 활용하기 어렵다.

SQL

  • 관계형 데이터베이스 관리 시스템(RDBMS)을 조작할 때 사용하는 언어이다.
    - RDBMS(Relational Database Management System): 행과 열을 가지는 표 형식 데이터를 저장하는 형태의 DB
    • DML(Data Manipulation Language)
      • 데이터 조작, SQL의 가장 기본이 되는 명령셋
      • DB에 새롭게 데이터를 추가, 삭제, 내용 갱신 등에 사용
    • DDL(Data Definition Language)
      • 데이터 정의
      • DB객체라는 데이터 그릇을 이용하여 데이터를 관리하는데, 객체를 만들거나 삭제하는 명령어
      • DB 객체에는 테이블, 뷰 등이 있다.
    • DCL(Data Control Language)
      • 데이터 제어
      • 트랜잭션을 제어하는 명령과 데이터 접근 권한을 제어하는 명령 포함

MVC

  • Model, View, Controller를 분리한 디자인패턴
    - Model
    • 애플리케이션의 상태를 나타낸다.
      • Java Beans
    • View
      - 디스플레이 데이터 또는 프레젠테이션
      - JSP
    • Controller
      • View 와 Model 사이의 인터페이스 역할
      • Model/ View에 대한 사용자 입력 및 명령을 수신하여 그에 따라 적절하게 변경
      • Servlet
  • JSP와 Servlet을 모두 사용하는 모델
    - 프레젠테이션 로직(View)과 비즈니스 로직(Controller)을 분리한다.
    • View(보여지는 부분)는 HTML의 중심이 되는 JSP 사용
    • Controller(다른 자바 클래스에 데이터를 넘겨주는 부분)은 Java 코드가 중심이 되는 Servlet을 사용
    • Model은 Java Beans로, DAO를 통해 Mysql과 같은 Data Storage에 접근

0개의 댓글