본문 바로가기

개발/Jpa

[Jpa]처음 접하는 Jpa

실무에서 jdbc(JdbcTemplate)와 mybatis만 사용하다가 이번 인프런 스프링 강의를 통해 Jpa를 처음 접해보게 되었다.

 

원래 개발자가 직접 쿼리를 작성하지 않고 객체를 통해 DB와 통신하는 기술임은 알고 있었지만, 직접 구현하여 보니

 

더 새롭게 느껴졌다. 사전에 설정이 필요하긴 하지만.. 단순히 DB에 접근하는 로직만 먼저 살펴보자면

 

먼저 도메인으로 생성한 변수들에 대해 @Entity어노테이션 설정과 primary key에 해당하는 값을 @Id로 지정한다

(여기에서 DB상의 id가 자동으로 증가하는 값으로 설정되어 있으므로..IDENTITY로 지정)

 

Repository에서 EntityManager 객체를 import하여 생성자로 주입해준다.

이후 각 메소드들이 가지고 있는 기능을 생성한 EntityManager가 가지고 있는 메소드들로 구현한다.

insert문에 해당하는 save메소드와 id를 가져오는 부분의 코드가 굉장히 짧아졌다.

 

name 및 전체를 가져오는 부분은 jpql 문법을 사용하여 가져오게 된다.

(다만 이 부분도 spring data jpa를 사용하게 되면 쿼리를 사용하지 않아도 된다)

'개발 > Jpa' 카테고리의 다른 글

[JPA] Cascade & OrphanRemoval  (0) 2024.01.14
@Embedded, @Embeddable  (0) 2023.05.01
[JPA] JPA의 어노테이션(1)  (0) 2022.05.08