전체 글

오늘도 배움이 있는 하루가 되길 바라는 개발자
1. 프록시란?JPA에서 연관된 엔티티를 지연 로딩하기 위해 사용되는 객체다.데이터베이스 접근을 지연시켜 성능을 최적화한다.필요한 시점까지 데이터 로딩을 미뤄서 메모리 사용량을 줄이고 불필요한 쿼리 실행을 방지한다. ⭐지연 로딩JPA에서 실제 엔티티 데이터가 필요할 때까지 데이터베이스에서 해당 데이터를 로드하지 않는 방식.이를 통해 불필요한 데이터베이스 접근을 줄여 성능을 최적화한다. 2. 프록시의 필요성양방향 연관 관계인 두 엔티티가 있다.Member와 Team이라고 하자. ✅Member와 Team 코드@Entity@Getter@Setterpublic class Member{ @Id @GeneratedValue @Column(name = "MEMBER_ID") private Lon..
1. @MappedSuperclass 언제 사용할까?여러 엔티티 클래스에서 공통으로 사용되는 필드를 하나의 상위 클래스에 정의하고 이를 상속받아 사용하고자 할 때. 만약, 엔티티를 모두 만들었는데 공통적인 필드들을 추가해야 한다면하나 하나 엔티티마다 이렇게 중복으로 작성을 해줘야한다.이런 작업을 하지 않도록 도와주는 애노테이션이 바로 @MappedSuperclass다.private String createdBy;private LocalDateTime createdDate;private String lastModifiedBy;private LocalDateTime lastModifiedDate;... 2. 코드 예시 ✔️공통 매핑정보를 갖는 상위 클래스(BaseEntity)와 이를 상속받는 Member 클..
1. 데이터베이스에 상속관계 표현하기 관계형 데이터베이스는 상속 관계 개념이 없다.Java 객체는 상속 관계 개념이 있다.부모 클래스는 독립적으로 인스턴스화 할 필요가 없다면, 추상클래스로 만드는게 일반적이다.관계형 데이터베이스에 상속 관계를 표현하기 위해 JPA는 세 가지 주요 전략을 제공한다. 1-1) 조인전략- ITEM_ID를 외래키로 하위 테이블에 INSERT를 할 때, ITEM과 하위 테이블에 두 번 INSERT를 한다.ITEM에 DTYPE으로 하위 테이블을 구분한다. 1-2) 단일 테이블 전략- 한 테이블에 컬럼을 다 때려박고 DTYPE으로 자식 엔티티를 구분하는 전략이다.- 조인할 필요가 없으므로 조회 성능이 빠르고 조회쿼리가 단순하다. 1-3) 구현 클래스마다 테이블 전략 - 상위테이블(슈..
1. 연관관계 매핑 시 고려사항 3가지- 다중성 - 단방향 vs 양방향 - 연관관계의 주인 2. 다양한 연관관계✔️다중성데이터베이스 관점에서 보면 됨 - 다대일(N:1) : @ManyToOne - 일대다(1:N) : @OneToMany - 일대일(1:1) : @OneToOne - 다대다(N:M) : @ManyToMany 실무에서 다대다는 쓰면 안됨. ✔️다대일 단방향(N:1) N쪽이 외래키를 가지고 있어야하고 외래키를 가지고 있는 쪽을 연관관계 주인으로 지정해줘야한다. ✔️일대다(1:N)1이 연관관계 주인이다.Q. 그동안 배웠던거랑 다른 내용이라 헷갈림 N쪽이 외래키를 가지고 있어야 설계상 맞는거고 외래키를 가지고 있는 쪽을 연관관계 주인으로 지정해주라했는데 왜 1이 연관관계 주인이 될 수 있는 거지? ..
1. 참가신청2024년 8월 2일 삼성 코엑스에서 열리는 인프런 행사 INFCON 2024!오늘 7월 3일부터 7월 8일까지 신청기간이에요. 참가 신청 알림을 등록해놓고 알림이 오자마자 신청했습니다. 참가자 선정 발표일 ➡️ 2024년 7월 11일 (목) 14:00 INFCON 2024 참가신청 | 인프런 - 인프런인프런 | IT인을 위한 축제, 인프콘에 초대합니다!, 📢 인프콘 2024 참가신청 안내 참가 신청 기간은 2024년 7월 3일 (수) 15:00 ~ 7월 8일 (월) 23:59 입니다. 참가자 선정 발표일은 2024년 7월 11일 (목) 14:www.inflearn.com참가신청은 위 링크에서 하면 됩니다. 인프런 강의 구매이력이 있으면 50%할인 쿠폰이 있으니 잊지말고 쿠폰 적용을 한 다음..
1. 단방향 연관관계 복습2024.06.13 - [인프런 김영한 강의 정리/자바 ORM 표준 JPA 프로그래밍 기본편] - JPA 기본 | 연관관계 매핑 기초 JPA 기본 | 연관관계 매핑 기초1. 객체를 테이블에 맞춰 데이터 중심으로 모델링 했을 때 이 방식으로 모델링을 하면 객체지향과 거리가 멀어진다. 왜 객체의 참조와 외래키를 매핑해야되는지 예시를 보며 이해해보자. Memberururuwave.tistory.com member와 team이 있다.member는 하나의 team에 소속될 수 있다. 단방향 연관관계 Member 엔티티에 @ManyToOne, @JoinColumn으로 Team을 매핑해줬다.@Entity@Getter@Setterpublic class Member { @Id @Gen..
7월 1일이다. 벌써 한 해의 반이 지났다. 새롭게 다시 시작하는 마음으로 달려봐야겠다. 7월은 뭔가 이뤄내는 달이 될거야. 양 손 깁스하는게 아닌 이상 나약한 변명은 그만하고 일단 시작해보는 거야! - 돌맹이는 벅찰 정도로 내게 큰 사랑을 준다. 세상에서 제일 싫어하는 귀청소, 발톱깎기, 미용, 스케일링까지 전부 다 내가 하는데도 나를 엄청 사랑해주는 돌맹이. 이 쪼끄만 생명체가 날 일으켜 세우다니..하찮고 사랑스럽잖아.. 고마워 사랑해 맹🦝🩶
1. 삶의 가치얼마 전, 발목을 다쳐 난생 처음 MRI를 찍게 되었다. 발목 MRI지만 30분동안 온몸을 꼼짝않고 가만히 누워있어야 했다. 없던 폐쇄공포증도 생길만큼 쿵쿵거리는 소음은 꽤 공포스러웠다. '이 소리는 EDM이다.' 최면을 걸면서 내적 리듬을 타다가 금세 지루해졌다. 그 뒤로 온전히 나에게 집중하여 명상을 할 수 있었다. 만약, 누군가가 "천만원을 줄테니 너의 남은 생을 가져가겠다" 하면 교환할 수 있을 까? 상상 속 경매장에 내 여생을 내놓아봤다. 천만원, 1억, 5억, 10억 그리고 100억까지 금액이 올라갔다. 천만원은 터무니 없다고 생각했고 100억은 좀 고민이 됐지만 액수가 중요한게 아니었다. 왜냐하면, 얼마를 주든 내 손에 쥐어지는 건 한 푼도 없으니까. 죽으면 끝이니까. 인생에 ..
백엔드 개발자 - 젤리곰
backend-gummyBear