HwangHub

myBatis는 ORM인가? 본문

DEV-STUDY/Spring

myBatis는 ORM인가?

HwangJerry 2024. 1. 12. 15:04

앞으로 싸피에서 myBatis를 공부할 예정인데, 지금까지는 Spring의 대표적인 ORM인 JPA에 대해서만 사용해 왔기 때문에 이와 관련된 간단한 궁금증이 생겼다.

 

이에 따라 간단하게 짚고 넘어가려 한다.

 

myBatis는 SQL Mapper이고 JPA는 ORM기술이다. (즉, myBatis는 ORM이 아니다. 둘은 차이가 있다.)

 

  • SQL Mapper
    • 쿼리의 실행결과를 미리 지정하여 두고 이를 객체로 매핑하는 기술을 말한다. 즉, 쿼리를 개발자가 직접 작성해야 한다.
  • ORM
    • 쿼리를 개발자가 직접 작성하지 않아도 ORM에서 객체를 해석하여 쿼리를 생성해준다. (복잡한 쿼리가 필요한 경우에는 직접 작성하는 경우도 있음)
    • ORM은 객체지향 언어와 관계형 데이터베이스 간의 패러다임 갭을 해소하고자 등장한 기술이며, 이를 통해 개발자는 객체지향 코드를 활용한 비즈니스 로직에만 집중해도 자동으로 SQL을 처리할 수 있게 되었다.
Comments