이 영역을 누르면 첫 페이지로 이동
개발다이어리 블로그의 첫 페이지로 이동

개발다이어리

페이지 맨 위로 올라가기

개발다이어리

저만의 개발일지를 만들어가는 공간입니다.

JPA

  • 개발다이어리
연관관계 매핑(단방향)

연관관계 매핑(단방향)

2022.04.09
객체와 RDB는 분명 다른방향으로 동작하게 되있다. 서로 다른 패러다임을 가지고있는 객체와 RDB를 같게 만드는 것은 아무리 ORM을 사용한다고 하더라도 머리로 이해하는 것이 쉽지 않을 것이다. JPA를 이용하여 객체와 RDB를 연결하기 위해서 몇 가지 용어를 이해해야한다. 방향 : 단방향, 양방향 다중성 : 다대일(N:1), 일다대(1:N), 일대일(1:1), 다대다(N:M) 연관관계의 주인 : 객체 양방향 연관관계는 관리주인이 필요 이러한 용어들을 가지고 연관관계 매핑에 대한 이해를 시작해보자. Member와 Team을 매핑한다고 생각해보자 @Entity class Member { @Id @GeneratedValue(strategy = GenerationType.AUTO) @Column(name = ..
[JPA] 영속성 컨텍스트

[JPA] 영속성 컨텍스트

2022.02.01
JPA를 사용하기 위해서는 영속성 컨텍스트라는 것을 정확하게 이해 할 필요가 있다. 객체지향과 RDB와의 패러다임을 없애주는 요소이기도 하며 JPA의 내부가 어떻게 동작하는지 이해할 수 있는 방향이기도 하다. 먼저, 우리가 JPA에서 데이터를 저장할 때 사용하는 persist()는 정확하게는 데이터를 저장시키는 메소드가 아니다. public class JpaMain { public static void main(String[] args) { EntityManagerFactory emf = Persistence.createEntityManagerFactory("testUnit"); EntityManager em = emf.createEntityManager(); EntityTransaction tx = e..
[JPA] EntityManager

[JPA] EntityManager

2022.02.01
JPA는 기본적으로 persistence라는 클래스를 기반으로 동작한다. persistence-unit에 데이터베이스 연결이나 쿼리 로그 등의 설정들을 만들고 이 내용을 기반으로 EntityManagerFactory를 생성해서 사용하는 것이다. Persistence 간단하게 persistence.xml을 만들어보자 persistence-unit은 하나의 DB당 하나씩 생성해서 사용하면 된다. 위의 persistence-unit name="testUnit" 를 보면 여기서 설정한 persistence-unit의 이름이 "testUnit"이라는 것을 알 수 있다. 그리고 필요한 설정들을 해주면 되는데, 여기서는 h2데이터베이스를 사용하기 위한 설정 쿼리로그, sql로그 포맷 여부 등의 설정 들을 작성하였다...
[JPA] JPA 알아보기

[JPA] JPA 알아보기

2022.01.31
들어가기에 앞서 우리가 개발을 하다보면 의아한점들을 느낄 수 있다. 언어도 객체지향이고 코드도 객체지향적으로 짜는데 DB와 매핑할려고보면 객체지향적인 코드가 나오지 않게된다. 이것은 우리가 사용하는 RDB와 객체지향과의 패러다임의 불일치에서 나오는 문제일 것이다. 일반적으로 RDB를 많이 사용하고있는데, RDB는 SQL로만 동작하는 시스템으로 객체라는 개념이 없다. 하지만 우리는 코드를 작성할 때 객체지향적으로 작성하고 이 코드로 가져오는 데이터들을 저장하기 위해서 RDB를 사용한다. 그래서 결국 DB에 맞게 코드를 다시 바꾸게 되는 것이다. 이런 방식으로 개발을 하다보면 어느샌가 SQL중심의 코딩을 하고있는 자신을 볼 수 있다. 똑같은 쿼리를 몇번이나 반복해서 작성하고 테이블에서 하나의 컬럼이 변경되면..
  • 최신
    • 1
  • 다음

정보

개발다이어리 블로그의 첫 페이지로 이동

개발다이어리

  • 개발다이어리의 첫 페이지로 이동

검색

메뉴

  • 홈
  • Github
  • 방명록

나의 외부 링크

카테고리

  • 분류 전체보기 (66)
    • Spring (19)
      • MVC (7)
      • Boot (3)
      • Core (8)
      • Security (1)
    • Java (1)
    • 네트워크 (7)
    • JPA (6)
    • IntelliJ (2)
    • Database (1)
      • h2 (1)
      • postgreSQL (0)
    • 토이 프로젝트 (5)
      • 여행일지작성 (5)
    • 에러모음 (7)
    • 테스트코드 (2)
    • Git (8)
    • Nginx (2)
    • AWS (1)
    • 책 리뷰 (1)
    • Kotlin (2)
    • 회고 (1)
      • 24년도 회고 (1)
    • API문서 (0)

최근 글

인기 글

댓글

공지사항

아카이브

태그

  • JPA
  • 테스트코드 실행안됨
  • 연관관계 매핑
  • http 헤더
  • 네트워크 #TCP #IP #인터넷 통신
  • HTTP
  • 단방향 매핑
  • HTTP상태코드

정보

ssung의 개발다이어리

개발다이어리

ssung

블로그 구독하기

  • 구독하기
  • RSS 피드

방문자

  • 전체 방문자
  • 오늘
  • 어제

티스토리

  • 티스토리 홈
  • 이 블로그 관리하기
  • 글쓰기
Powered by Tistory / Kakao. © ssung. Designed by Fraccino.

티스토리툴바