resultMap resultMap은 복잡한 매핑을 처리할 때 사용한다. 예를 들어, 여러 테이블을 조인하거나 SQL 컬럼명이 Java 객체의 필드명과 다를 때 유용하다. 이 방법을 사용하면 SQL 결과를 더 세밀하게 매핑할 수 있다. resultMap을 정의할 때는 <resultMap> 태그 내에서 컬럼과 객체의 필드를 매핑하는 방식이다.
resultType resultType은 비교적 간단한 매핑에 사용된다. SQL 결과를 바로 Java 객체에 매핑할 때 사용하고, 객체가 아닌 기본 타입도 매핑할 수 있다. 쿼리가 간단할 때 이 방법을 많이 쓴다.
constructor (생성자 매핑) constructor는 SQL 결과를 객체의 생성자에 매핑할 때 사용한다. 객체 생성 시 매핑이 필요한 경우에 유용하다.
parameterMap parameterMap은 쿼리 파라미터를 매핑할 때 사용된다. SQL 쿼리에 전달되는 파라미터 값을 명시적으로 매핑할 수 있다.
rowBounds rowBounds는 페이징 처리할 때 사용된다. 쿼리 결과의 시작 위치와 개수를 지정해서 페이지네이션을 구현할 수 있다.
association / collection association은 여러 테이블의 조인 결과를 객체 간 관계로 매핑할 때 사용되고, collection은 여러 객체를 리스트 형태로 매핑할 때 사용된다.