프로그램을 실행하는 동안 그 안에서는 많은 데이터들이 사용되고, 만들어진다. 우리는 이 데이터들이 프로그램이 종료되어도 사라지지 않고 어떤 곳에 저장되는 것이 필요한데, 이 개념이 바로 영속성(Persistence)이다. 이는 Layered Architecture에서 다음과 같이 도메인 모델과 데이터베이스 사이에 존재하며, 프로그램의 객체정보를 DB에 저장하고, DB의 정보를 객체로 담아와 사용할 수 있도록 한다. 자바에서는 데이터의 영속성(Persistence)를 위한 JDBC를 지원해주는데, 그림에서 보이는 프로세스와 같이 JDBC에서 DB에 접근하여 SQL을 수행하고, 결과값을 다시 dataType으로 매핑시켜주는 작업을 개발자가 일일히 수행해야 하는 번거로움이 있다. SQL Mapper와 ORM은..