728x90
반응형
SMALL

jpa 4

(JPA) mappedBy 완벽 이해!

mappedBy는 JPA에서 양방향 연관관계를 매핑할 때 사용하는 중요한 속성입니다. 이 개념을 이해하려면, 먼저 양방향 연관관계가 무엇인지부터 살펴보고, 그 후 mappedBy의 의미와 역할을 코드 예시와 함께 단계적으로 설명하겠습니다! ✅ 1. 양방향 연관관계란?엔티티 A와 엔티티 B가 서로 참조하는 관계를 말합니다.예시:Member가 Team에 소속되어 있고,Team도 Member들을 알고 있을 때즉, Member ↔ Team 관계 ✅ 2. 관계 설정 시 주인(owner)과 비주인(inverse)이 존재JPA는 연관관계의 주인만이 외래 키를 관리할 수 있습니다.양방향 관계에서는 어느 쪽이 외래 키를 관리하는 주인인지 명확히 해야 합니다.그때 사용하는 것이 바로 mappedBy입니다. ✅ 3. 예..

개발지식 2025.07.26

(JPA) 연관관계 매핑

객체지향 설계의 목표는 자율적인 객체들의 협력 공동체를 만드는 것이다!- 조영호(객체지향의 사실과 오해) JPA는 객체와 데이터베이스 간의 패러다임 불일치를 해결하기 위해 등장는데,그 중에서도 연관관계 매핑은 객체 간 관계(예: 멤버 ↔ 팀)를 테이블로 연결하는 핵심 기술이다. 📌 1. 연관관계란?예를 들어, 다음과 같은 도메인이 있다고 해봅시다.하나의 Member는 하나의 Team에 속한다.하나의 Team은 여러 Member를 가질 수 있다.즉, Member : Team = N : 1 구조입니다. 🛠️ 2. 연관관계 매핑 - 단방향 @ManyToOne✅ Member 엔티티에서 Team을 참조하는 구조@Entitypublic class Member { @Id @GeneratedValue ..

개발지식 2025.07.25

(JPA) 영속성 컨텍스트

영속성 컨텍스트란엔티티를 영구 저장하는 환경 이라는 뜻! EntityManager.persist(entity); 영속성 컨텍스트를 통해서 엔티티를 영속화 하는 것! 영속화란...더보기영속화는 일반적으로 어떤 상태나 데이터를 프로그램 종료 후에도 유지되도록 저장하는 것을 의미합니다. 특히, 컴퓨터 과학에서는 데이터베이스에 객체나 정보를 저장하여 프로그램이 종료된 후에도 그 데이터가 사라지지 않고 계속 사용할 수 있도록 하는 것을 영속화라고 합니다. 영속성 컨텍스트를 사용하면 entity를 DB가 아닌 영속성 컨텍스트에 저장을 함!영속성 컨텍스트는 논리적인 개념이며, 눈에 보이지 않는다엔티티 메니저를 통해 접근을 한다. 그런데 그럼 엔티티 매니저와 영속성 컨텍스트의 관계는?! 엔티티 메니저는 영속성 컨텍..

개발지식 2025.07.23

DI를 하지 않았을 때 NullPointerException 발생 이유

이 게시글은 이동욱 - "스프링 부트와 AWS로 혼자 구현하는 웹 서비스" 에서 참고하였습니다. 위 책을 참고하여 JUnit 에서 값을 등록하는 테스트를 만들어보았습니다. 문제 상황 JUnit 을 수행하는 과정에서 posts api 까지 정상적으로 값이 전달되지만 NullPointerException 에러가 발생 ■ PostsApiControllerTest.java @Test public void Posts_등록된다() throws Exception { //given String title = "title"; String content = "content"; PostsSaveRequestDto requestDto = PostsSaveRequestDto.builder() .title(title) .cont..

개발지식 2024.03.22
728x90
반응형
LIST