[워밍업 스터디 클럽 0기 BE] 4강 정리 및 공부

(강의 링크 - https://inf.run/XKQg)

최초 JPA 사용하기

  1. 문자열 SQL을 직접 사용하는 것의 한계를 이해하고, 해결책인 JPA, Hibernate, Spring Data JPA가 무엇인지 이해한다.

  2. Spring Data JPA를 이용해 데이터를 생성, 조회, 수정, 삭제할 수 있다.

  3. 트랜잭션이 왜 필요한지 이해하고, 스프릉에서 제어하는 방법을 익힌다.

  4. 영속성 컨텍스트와 트랜잭션 관계를 이해하고, 영속성 컨텍스트의 특징을 알아본다.

JPA(Java Persistence API)

: 자바 진영의 ORM (Object-Relational Mapping)

* Persistence 영속성 : 서버가 재시작되어도 데이터는 영구적으로 저장되는 속성

=> 객체와 관계형 DB의 테이블을 짝지 데이터를 영구적으로 보관하기 위해 Java 진영에서 정해진 규칙 -> HIBERNATE

 

 

JPA 어노테이션

image

JPA를 사용하기 위해서는 기본 생성자가 꼭 필요하다.

image

@Column

Column 어노테이션 자체를 생략할 수 있다. 완전히 동일하는 경우

 

application.yml

image

ddl-auto: -> 스프링이 시작할 때 DB에 있는 테이블을 어떻게 처리할지

: create -> 기존 테이블이 있다면 삭제 후 다시 생성

: create-drop -> 종료될 때 테이블 모두 제거

: update -> 객체와 테이블이 다른 부분만 변경

: validate -> 객체와 테이블이 동일한지 확인

: none -> 별다른 조치를 하지 않는다.

 

show_sql -> JPA를 사용해 DB에 SQL을 날릴 때 SQL을 보여줄 것인가

format_sql -> SQL을 보여줄 때 예쁘게 포맷팅 할 것인가

dialect -> 이 옵션으로 DB를 특정하면 조금씩 다른 SQL을 수정해준다.

 

유저 저장 기능

imagesave 메소드에 객체를 넣어주면 INSERT SQL이 자동 / save 되고 난 후 id가 들어가있다.

 

save : 주어지는 객체를 저장하거나 업데이트 시켜준다.

findAll : 주어지는 객체가 매핑된 테이블의 모든 데이터를 가져온다.

findById : id를 기준으로 특정한 1개의 데이터를 가져온다.

댓글을 작성해보세요.