
관계형 데이터베이스와 자바 객체를 매핑해주는 API
쉽게 말해 DB와 상호작용 할 수 있게 해주는 API, Mybatis와 비슷한 기능이지만 JPA는 SQL문 마저 자동으로 생성해준다.
성능면에서 생각해 보았을 때 여러 테이블을 JOIN 하는 복잡한 쿼리일 경우 Mybatis가 좋고 그렇지 않을 경우에는 JPA가 좋다.
또한 Mybatis는 쿼리문만 알면 쉽게 사용 할 수 있지만 JPA는 @Table, @Column, @Id 같은 새로운 작성법을 익혀야 한다.
<!--Mybatis-->
<select id="selectTest" parameterType="HashMap" resultType="HashMap">
SELECT
*
FROM
test
</select>
//JAP
public List<Todo> getAll() {
return todoRepository.findAll();
}