[워밍업 스터디 클럽 0기 BE] 4강 정리 및 공부
(강의 링크 - https://inf.run/XKQg)
최초 JPA 사용하기
문자열 SQL을 직접 사용하는 것의 한계를 이해하고, 해결책인 JPA, Hibernate, Spring Data JPA가 무엇인지 이해한다.
Spring Data JPA를 이용해 데이터를 생성, 조회, 수정, 삭제할 수 있다.
트랜잭션이 왜 필요한지 이해하고, 스프릉에서 제어하는 방법을 익힌다.
영속성 컨텍스트와 트랜잭션 관계를 이해하고, 영속성 컨텍스트의 특징을 알아본다.
JPA(Java Persistence API)
: 자바 진영의 ORM (Object-Relational Mapping)
* Persistence 영속성 : 서버가 재시작되어도 데이터는 영구적으로 저장되는 속성
=> 객체와 관계형 DB의 테이블을 짝지 데이터를 영구적으로 보관하기 위해 Java 진영에서 정해진 규칙 -> HIBERNATE
JPA 어노테이션
JPA를 사용하기 위해서는 기본 생성자가 꼭 필요하다.
@Column
Column 어노테이션 자체를 생략할 수 있다. 완전히 동일하는 경우
application.yml
ddl-auto: -> 스프링이 시작할 때 DB에 있는 테이블을 어떻게 처리할지
: create -> 기존 테이블이 있다면 삭제 후 다시 생성
: create-drop -> 종료될 때 테이블 모두 제거
: update -> 객체와 테이블이 다른 부분만 변경
: validate -> 객체와 테이블이 동일한지 확인
: none -> 별다른 조치를 하지 않는다.
show_sql -> JPA를 사용해 DB에 SQL을 날릴 때 SQL을 보여줄 것인가
format_sql -> SQL을 보여줄 때 예쁘게 포맷팅 할 것인가
dialect -> 이 옵션으로 DB를 특정하면 조금씩 다른 SQL을 수정해준다.
유저 저장 기능
save 메소드에 객체를 넣어주면 INSERT SQL이 자동 / save 되고 난 후 id가 들어가있다.
save : 주어지는 객체를 저장하거나 업데이트 시켜준다.
findAll : 주어지는 객체가 매핑된 테이블의 모든 데이터를 가져온다.
findById : id를 기준으로 특정한 1개의 데이터를 가져온다.
댓글을 작성해보세요.