인프런 커뮤니티 질문&답변
mybatis랑 jpa의 차이가 궁금합니다
해결된 질문
작성
·
1.1K
1
안녕하세요 강사님. 3개월쯤 된 신입 개발자 입니다.
회사에서 myBatis를 사용한 프로젝트를 진행했고, 최근 한가해진 참에 JPA도 배워보고 싶어서 강의를 듣게되었는데 아무리 생각해도 JPA가 주는 CRUD의 장점을 myBatis가 커버할 수가 없을 것 같습니다.
1. 혹시 실무에서 JPA 대신 myBatis를 사용하는 특별한 이유가 있을까요?
2. 두 개를 섞어서 사용(JPA기반 동적쿼리만 myBatis 사용) 하면 좋을거같은데 실제 실무에서 이런 방식으로 사용하는 경우가 있을까요?
퀴즈
Spring Data JPA에서 Projections를 사용하는 주된 목적은 무엇인가요?
복잡한 동적 검색 조건 구성
엔티티의 특정 필드만 선택하여 조회
원시 SQL 쿼리 직접 실행
예제 객체로 간단히 검색
답변 1
5
안녕하세요. ye k님, 공식 서포터즈 OMG입니다.
1. JPA는 쿼리를 직접 만들어준 다는 장점이 있지만, 영속성 컨텍스트 등 복잡한 개념 때문에 러닝커브가 Mybatis에 비해 높습니다. 그렇기 때문에 국내에서는 순수 쿼리만 어느정도 다룰줄 알면 사용하기가 상대적으로 편한 Mybatis를 사용하는 회사가 많은 것으로 알고 있고, 답변을 드리는 저 또한 회사에서 Mybatis를 사용하고 있습니다.
-
2. 동적 쿼리를 편리하게 작성하기 위해 QueryDSL, Mybatis를 사용하는데요, QueryDSL도 결국 jpql 기반이라 jpql에서 지원하지 않는 쿼리는 Mybatis 혹은 JDBC등을 이용하여 쿼리를 짜기도 합니다.
추가적으로 알아두시면 좋을만한 내용(영한님 답변) 링크 첨부합니다.
https://www.inflearn.com/questions/25491
감사합니다.





