1. JPQL이란?
JPQL은 JPA보다 동적으로 쿼리를 만들어서 사용할 수 있는 쿼리입니다. JPA는 정해진 규칙에 따라 함수 명을 만들면 규칙에 따라 자동으로 쿼리를 생성해줍니다. 이때, 단점은 규칙에 맞게 작성하더라도 예상외의 쿼리가 동작할 수 있고, 길이가 길어지면 가독성이 떨어진다는 단점이있습니다. JPQL은 쿼리의 형식을 String으로 작성하여 EntityManager에게 전달해주면 EntityManager에서 쿼리를 실행 해 줍니다.
2. JPQL의 장점과 단점
쿼리를 String의 형태로 가지고 실행 시킬 수 있어서 쿼리를 직관적으로 이해할 수 있습니다. 또한 String의 형태이기 때문에 동적으로 쿼리를 설정할 수 있습니다. 하지만 String의 형태이기 때문에 띄어쓰기 등의 문법에 주의해야하고 성능에 있어서 네이트 쿼리보다 성능면에서 불리할 수 있고, 대용량 데이터 처리에서 제약이 있을 수 있습니다. 하지만 JPQL은 객체 지향적인 테이터 처리를 가능하게 하며, 데이터 베이스가 아닌 엔티티 기준으로 작성하기에 데이터 베이스에서 독립적입니다. 또한 연관관계에 있어서 지연로딩(Lazy Loading)의 사용이 가능합니다.
3. 내일 해야하는 것
- SWAGGER 적용하기
- 스프링 시큐리티 적용해보기
- 과제 제출하기
'TIL' 카테고리의 다른 글
TIL) 디자인 패턴 (1) | 2024.12.02 |
---|---|
TIL) n^2 배열 자르기 (1) | 2024.11.29 |
TIL) 다대다(Many-to-Many)에 관련해서 (1) | 2024.11.27 |
TIL) Lazy Loading, Eager Loading (0) | 2024.11.26 |
TIL) 알고리즘 최대공약수 , 최소공배수 구하기 (1) | 2024.11.25 |