EntityManager

JJ·2024년 7월 29일

backEnd

목록 보기
16/16
post-thumbnail

AOP(aspect-oriented programming)

관점지향프로그래밍

  • 구매 개발자: 구매 버튼 클릭 → [로그인 체크] → 구매 완료
  • 장바구니 개발자: 장바구니 버튼 클릭 → [로그인 체크] → 아이템 삭제 완료
  • 찜하기 개발자: 찜하기 버튼 클릭 → [로그인 체크] → 찜하기 완료
  • 로그인 체크 개발자: 로그인 체크

예시) @Transactional

EntityManager

  • persist(객체)

  • find(타입, 식별자)

    • cf) Spring도 타입으로 빈을 구별했지.. = 같은 타입의 객체가 1개 뿐, default (싱글톤 패턴)
  • remove(객체)

  • createQuery(자바스러운 쿼리)

    • cf) JPA는 자바-DB 패러다임 대신 일치 목적! ⇒ 자바는 자바스럽게, db는 db스럽게
    • JPQL(Java persistence query language)
    • 자바스럽게 쿼리를 쓰면 JPA가 알아서 SQL로 바꿔줌
    • SELECT 컬럼 FROM 테이블명(SQL) = SELECT 필드 FROM 클래스명 AS 별칭 (JPQL)
      • SELECT r.type FROM Room AS r
  • clear(): 영속성 컨텍스트를 비움

  • flush(): 영속성 컨텍스트-DB를 동기화

  • close(): 영속성 컨텍스트를 닫음

JPA, 참고한 벨로그
JPA, 참고한 인프런 댓글

profile
🎀👩🏻‍💻✨🐾🌷🦅

0개의 댓글