[내일배움캠프_Spring] 자바 Spring 입문_save(), saveAndFlush()_230119

2023. 1. 20. 01:32·스파르타 부트캠프(spring)

.어제 깃허브 고수 팀원분이 알려주신 방법으로 혼자 디벨롭 머지까지 시도했는데 머지는 됬지만 중간에 구조랑 기능을 전반적으로 손봤어서 크게 충돌이 났다. 덕분에 고수 팀원님이 충돌해결까지 해주셔서 ...감삼다!!


JPA 동작 원리

  • Java 객체와 관계형 DB 사이를 매핑하는 ORM 기술 표준
  • 인터페이스 (=기술 표준) 이다.

save() 메소드

  • 객체 지향 설계 중심에서의 Entity 객체를 ORM 을 이용하여 DB에 저장하는 기능
  • save() 메소드는 바로 DB 에 저장되지 않고 영속성 컨텍스트에 저장되었다가 flush() 또는 commit() 수행 시 DB에 저장됨
save() 메소드는 엔티티를 DB에 저장하는 기능을 수행

save() 메소드는 Spring Data 에서의 정의한 CrudRepository 인테페이스의 메소드.
  • postReository.save(new Post(requestDto, user.getId))

 

saveAndFlush() 메소드

  • 즉시 DB에 변경사항을 적용하는 방식
save() 메소드와는 다르게 saveAndFlush() 메소드는 실행중에 즉시 data를 flush한다.

saveAndFlush() 메소드는 Spring Data JPA에서의 정의한 JpaRepository 인테페이스의 메소드.
saveAndFlush() 메소드는 아직 commit되지 않은 같은 트랙잭션 내에서 먼저 처리된 결과를 후에 사용할 때 사용된다.

ex.) save() 메소드는 DB에 동기화 시키지 않았기 때문에 스토어드 프로시저는 변경사항을 알 수 없고 이로 인해 제대로 동작X.

  • save() 메소드는 영속성 컨텍스트에 저장하는 것이고 실제로 DB 에 저장은 추후 flush 또는 commit 메소드가 실행될 때 이루어짐
  • saveAndFlush() 메소드는 즉시 DB 에 데이터를 반영함

'스파르타 부트캠프(spring)' 카테고리의 다른 글

[내일배움캠프_Spring] 자바 Spring 입문_AOP_230125  (0) 2023.01.26
[내일배움캠프_Spring] 자바 Spring 입문_연관 관계_230120  (0) 2023.01.23
[내일배움캠프_Spring] 자바 Spring 입문_Git 브랜치 활용_230118  (0) 2023.01.18
[내일배움캠프_Spring] 자바 Spring 입문_예약어_230116  (0) 2023.01.16
[내일배움캠프] 자바 Spring_SQL(5)제약조건_230113  (0) 2023.01.16
'스파르타 부트캠프(spring)' 카테고리의 다른 글
  • [내일배움캠프_Spring] 자바 Spring 입문_AOP_230125
  • [내일배움캠프_Spring] 자바 Spring 입문_연관 관계_230120
  • [내일배움캠프_Spring] 자바 Spring 입문_Git 브랜치 활용_230118
  • [내일배움캠프_Spring] 자바 Spring 입문_예약어_230116
yeah구리
yeah구리
백엔드를 공부하는 초심자입니다.
  • yeah구리
    개발일지_헤맨만큼 내땅이다
    yeah구리
  • 전체
    오늘
    어제
    • 분류 전체보기 (114)
      • 스파르타 부트캠프(spring) (75)
      • 스파르타 기술면접 (10)
      • 코딩연습 (0)
      • 항해 (10)
      • 개발일지 (4)
        • 개인 회고 (1)
        • 개발로그 (실무) (2)
      • 공부노트 (0)
      • 코딩테스트 (0)
        • 프로그래머스 (0)
        • 백준 (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    비전공개발자 #개발로그 #커리어
    X(Twitter) API #캐싱 #트러블슈팅 #개발
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.5
yeah구리
[내일배움캠프_Spring] 자바 Spring 입문_save(), saveAndFlush()_230119
상단으로

티스토리툴바