서론Spring Boot 프로젝트를 개발 및 운영하다보면 MyBatis라는 라이브러리를 사용해서 쿼리를 DB로 요청할 수 있으나 최근 들어서 JPA를 이용하는 서비스가 많아지고 있는 추세이다. 쿼리 운영 유지보수 측면에서 고려해봤을 때 복잡한 쿼리가 많은 경우 Native Query를 활용하지 않고 MyBatis 라이브러리를 사용하는 경우도 종종 있다.JPA에서 제공하는 쿼리 메소드를 사용해도 기본적인 CRUD의 경우 어렵지 않다. 다만 복잡한 쿼리 혹은 요구사항에 따라 JPA에서 제공해주는 인터페이스로 활용이 어려울 경우 QueryDSL을 사용하게 된다.인터페이스로만 구현할 경우 복잡성과 유지보수 측면에서 효율적이지 못함(가독성이 떨어짐) 이에 따라 Spring Boot 프로젝트에 QueryDSL을 함..