JDBC의 단점을 보완
프로그램에서 생성하는 데이터를 메모리에만 들고 있으면 프로그램 종료시 사라지므로 파일 시스템이나 DB를 활용하여 사라지지 않는 데이터를 만들겠다.
데이터베이스와의 연동되는 시스템을 빠르게 개발하고 안정적인 구동을 보장해주는 프레임워크
⇒ 예외 처리, 리소스 관리 대행, 실행 결과를 객체에 담기
SQL Mapper
SQL문장으로 직접 데이터베이스 데이터를 다룸 (Mybatis, DOF)
객체(Object)와 SQL문을 매핑하여 데이터를 객체화하는 기술
객체와 관계를 매핑하기보다는, SQL문의 질의 결과와 객체를 매핑시켜줌
ORM((Object Relational Mapping)
객체를 통해 간접적으로 데이터베이스를 다룸 (Hibernate, JPA)
객체(Object)와 관계형 데이터베이스(RDBMS)를 매핑하여 데이터베이스 테이블을 객체지향적으로 사용하기 위한 기술
객체 <-> 데이터베이스 데이터 자동 매핑
ORM을 사용하면 SQL문 작성 없이, 매핑하는 설정만으로 DB테이블 내의 데이터를 객체로 전달받을 수 있다.
JDBC로 처리하는 부분의 일부를 코드와 파라미터 설정으로 매핑을 대신 해준다.
장점
+ 학습이 쉽다.
+ 소스코드와 sql을 분리할 수 있다.
단점
+ 반복적인 작업이 반복된다.