

JPA
- 객체와 관계형 데이터베이스 간의 매핑을 제공하며 JPQL을 사용해서 데이터베이스와 상호작용
- 더 간단하고 간결한 API를 제공해서 개발자 생산성을 높일 수 있고 오류를 줄일 수 있습니다.
- 다른 애플리케이션과 호환성이 좋고 유연성과 확장성이 필요한 프로젝트에 더 알맞습니다.
- xml를 선정 안해도 됨
- Repository는 반드시 JpaRepository Interface 상속 받아야함
- JpaRepository<T, ID>
- T : Table과 연결된 Entity
- ID : Entity 내 PK(ID)의 자료형
- JPA : NO SQL,개발의 편리함을 위해 sql문을 쓰지 않겠다.
- JpaRepository안에서 기본 CRUD 메소드가 정의가 되어있음
- hibernate 구현체가 테이블과, ID에 맞춰서 자동으로 구현

6.application에 설정해주기

7.DTO에 SQL를 합쳐서 간편하게 사용 가능

https://velog.io/@ap3878/JPA%EC%84%A4%EC%A0%95%ED%95%98%EA%B8%B0
MyBatis
- 개발자가 SQL 쿼리를 직접 작성해 사용하며, 데이터 매핑을 위해 XML 또는 어노테이션을 사용
- @Query 어노테이션을 이용해서 직접 SQL문을 작성하는 방법
- 복잡한 쿼리문 작성하기 힘듦(자바로 작성을하니까 스페이스바를 할수없음)
- 복잡한것을 만들면 JPA단일보단 MyBatis를 겸용하는 경우가 많음
4.DTO도 설정하고 SQL도 설정을 해줘야 한다.
예시1)

예시2)
