JDBC의 단점을 보완

Persistence(영속성)

프로그램에서 생성하는 데이터를 메모리에만 들고 있으면 프로그램 종료시 사라지므로 파일 시스템이나 DB를 활용하여 사라지지 않는 데이터를 만들겠다.

Persistence Framework

데이터베이스와의 연동되는 시스템을 빠르게 개발하고 안정적인 구동을 보장해주는 프레임워크

⇒ 예외 처리, 리소스 관리 대행, 실행 결과를 객체에 담기

구현 방식에 따른 종류

  1. SQL Mapper

    SQL문장으로 직접 데이터베이스 데이터를 다룸 (Mybatis, DOF)

    객체(Object)와 SQL문을 매핑하여 데이터를 객체화하는 기술

    객체와 관계를 매핑하기보다는, SQL문의 질의 결과와 객체를 매핑시켜줌

  2. ORM((Object Relational Mapping)

    객체를 통해 간접적으로 데이터베이스를 다룸 (Hibernate, JPA)

    객체(Object)와 관계형 데이터베이스(RDBMS)를 매핑하여 데이터베이스 테이블을 객체지향적으로 사용하기 위한 기술

    객체 <-> 데이터베이스 데이터 자동 매핑

    ORM을 사용하면 SQL문 작성 없이, 매핑하는 설정만으로 DB테이블 내의 데이터를 객체로 전달받을 수 있다.

sql mapper & orm 심화

간단 비교 정리!

Mybatis

JDBC로 처리하는 부분의 일부를 코드와 파라미터 설정으로 매핑을 대신 해준다.

장점
+ 학습이 쉽다.
+ 소스코드와 sql을 분리할 수 있다.

단점
+ 반복적인 작업이 반복된다.