프록시 특징 1 실제 클래스를 상속 받아서 만들어짐 실제 클래스와 겉 모양이 같다. 사용하는 입장에서는 진짜 객체인지 프록시 객체인지 구분하지 않고 사용하면 된다. 프록시 특징 2 프록시 객체는 실제 객체의 참조(target)를 보관 프록시 객체를 호출하면 프록시 객체는 실제 객체의 메소드 호출 프록시 객체의 초기화 Member member = em.getReference(Member.class,"1"); //쿼리를 요청하지 않음 member.getName(); //쿼리를 요청함 프록시 특징3 프록시 객체는 처음 사용할 때 한번만 초기화 됨 프록시 객체를 초기화 할 때, 프록시 객체가 실제 엔티티로 바뀌는 것은 아님, 초기화되면 프록시 객체를 통해서 실제 엔티티에 접근 가능 프록시 객체는 원본 엔티티를 ..
정의 : 엔티티들 사이에서 공통적으로 사용되는 컬럼을 모아두는 클래스일 경우 선언하여 사용하는 어노테이션 MappedSuperclass 선언 예제 코드 @MappedSuperclass public abstract class BaseEntity { private String createBy; private LocalDate createDate; private String modifyedBy; private LocalDate modifyDate; ... } → 선언할 경우 왠만하면 추상클래스로 선언하는 것이 좋다. 적용 대상 클래스 Member.java @Entity public class Member extends BaseEntity{ @Id @Column(name="MEMBER_ID") private L..
해당 이미지를 보게 되면 객체 ORM 과 테이블은 유사한 관계를 가지고 있다. 단일 테이블 형태와 비슷하게 객체는 Item을 부모 클래스를 가지고 자식 클래스로 Album,Movie,Book 이 있다. 테이블을 보게되면 단일 테이블 같은 경우 Item이라는 테이블 안에 Album,Movie,Book 내용이 다들어간다. 하지만 조인 전략같은 경우 테이블이 세분화 되어있으며 해당 item의 PK 값을 각각의 자식 테이블들이 FK 값을 가지게 된다. 사용 어노테이션 @Inheritance(strategy=InheritanceType.JOIN) @DiscriminatorColumn(name=””) @DiscriminatorValue(””); 예제 확인 @Entity @Inheritance(strategy = I..
단일 테이블이란? 한마디로 한 테이블에 다 선언하는 방법 사용 어노테이션 @Inheritance(strategy = InheritanceType.SINGLE_TABLE) 상속관계 예시) Item class를 Album,Movie.Book이 상속을 받고있는 경우이다. 왼쪽 item 테이블을 보면 Album,Movie.Book 3개의 객체 내용이 한 테이블에 포함되어있다. 각각의 Album,Movie.Book 클래스를 확인해 보자. 사용 어노테이션 @Inheritance(strategy=InheritanceType.SINGLE_TABLE) @DiscriminatorColumn(name=””) @DiscriminatorValue(””); @DiscriminatorColumn 상속에 해당하는 부모클래스에 지정하..
양방향 매핑의 의미 양방향 매핑이란 두 엔티티 간에 서로 관계를 가진다는 의미를 가진다 예시) Member 테이블과 Team 테이블 관계 양방향 매핑 Member 엔티티는 단방향과 동일 @Entity public class Member { @Id private Long id; @Column(name="USERNAME") private String name; @ManyToOne // 다 대 1 (Team 하나에 여러 Member 가 들어간다) @JoinColumn(name="TEAM_ID") private Team team; } Team 엔티티에는 컬렉션을 추가 @Entity public class Team{ @Id private Long id; private String name; @OneToMany(m..
- Total
- Today
- Yesterday
- 캐시
- docker
- 개념 이해하기
- Cache
- 네이버 클라우드
- Lock
- mybatis
- Quartz
- spring
- 리눅스
- 정의
- MySQL
- 캘린더
- 스케줄러
- 이미지
- LocalDate
- ncp
- Java
- 컨테이너
- 권한
- dfs
- 도커
- centos7
- leatcode
- hazelcast
- dockerfile
- 격리수준
- insert
- 알고리즘
- Linux
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |