일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 프로그래머스
- 데이터 베이스
- JPA
- Til
- 알고리즘
- spring boot
- 일정관리프로젝트
- LV.02
- LV01
- 배열
- 포트폴리오
- 일정관리 프로젝트
- mysql
- GIT
- 디자인 패턴
- S3
- 이것이 자바다
- LV02
- Lv.0
- LV1
- Redis
- Join
- Java
- LV03
- 연습문제
- 코테
- SQL
- CoffiesVol.02
- docker
- LV0
- Today
- Total
목록백엔드/Jpa (6)
코드 저장소.
목차1.프록시2.로딩전략 1.프록시JPA에서의 프록시는 엔티티의 지연 로딩(Lazy Loading)을 지원하기 위해 사용됩니다. JPA 구현체(예: Hibernate)는 엔티티 대신 프록시 객체를 반환하여 실제 데이터베이스 액세스를 지연할 수 있습니다. 프록시 객체는 실제 엔티티의 서브 클래스 또는 동적 프록시로서, 엔티티의 실제 데이터가 필요한 시점까지 데이터베이스 쿼리를 연기합니다. 프록시의 동작 원리지연 로딩 설정: 엔티티 관계(예: @OneToMany, @ManyToOne)에 fetch = FetchType.LAZY를 설정합니다.프록시 생성: JPA 구현체는 엔티티를 로드할 때 실제 엔티티 대신 프록시 객체를 반환합니다. 초기화: 프록시 객체의 메서드가 호출되면, JPA 구현체는 실제 엔티티 데이..
목차1.JPA의 데이터 타입2.기본값 타입3.임베디드 타입4.컬렉션 값 타입 1.JPA의 데이터 타입JPA에서의 데이터 타입은 크게 엔티티타입과 값 타입으로 되어있습니다. 엔티티 타입 엔티티 타입은 @Entity로 정의를 할 수 있는 객체를 의미합니다. 값타입 값타입은 크게 3가지로 분류를 할 수 있습니다. 1.기본 값 2.임베디드 타입3.컬렉션 타입2.기본값 타입기본 값 타입은 자바에서 기본 타입, 래퍼 클래스, String을 예로 들 수 있습니다.@Entity@Getter@NoArgsConstructor@AllArgsConstructorpublic class testEntity { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) ..
목차1.JPA의 연관관계2.1대1관계3.1대다관계4.다대다관계 1.JPA의 연관관계JPA(Java Persistence API)에서 연관관계는 단방향과 양방향으로 설정할 수 있습니다. 연관관계는 크게 1대1,1대다,다대다의 세 가지 유형으로 나뉘며, 각각을 단방향과 양방향으로 구현할 수 있습니다. 2.1대1관계단방향: 한쪽 엔티티가 다른 한쪽 엔티티를 참조합니다. 예를 들어, User가 UserProfile을 참조하지만 UserProfile은 User를 참조하지 않습니다.@Entitypublic class User { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; private String name..

목차1.영속성 컨텍스트2.엔티티의 생명주기3.영속성 컨텍스트의 이점 1.영속성 컨텍스트영속성 컨텍스트는 엔티티(Entity) 객체의 생명주기를 관리하는 환경입니다. 영속성 컨텍스트는 JPA가 데이터베이스와 상호작용할 때 사용되며, 엔티티 객체의 상태를 추적하고 관리합니다. 2.엔티티의 생명주기비영속 (new/transient) : 영속성 컨텍스트와 전혀 관계가 없는 새로운 상태영속 (managed) : 영속성 컨텍스트에 관리되는 상태준영속 (detached) : 영속성 컨텍스트에 저장되었다가 분리된 상태삭제 (removed) : 삭제된 상태비영속객체를 생성했지만 영속성 컨텍스트에서 관리하지 않는 상태를 의미한다.//객체를 생성한 상태(비영속) Member member = new Member(); memb..
목차1. 엔티티2. 엔티티 매핑 관련 어노테이션 1. 엔티티 엔티티는 데이터베이스 테이블에 매핑되는 자바 클래스를 말합니다. 엔티티 ORM(Object-Relational Mapping)에서 중요한 역할을 하며, 개발자가 복잡한 SQL 쿼리를 작성하는 대신 객체를 사용하여 데이터베이스와 상호 작용할 수 있도록 합니다. 데이터 베이스의 테이블을 연관시키기 위해서는 Jpa에서 제공하는 어노테이션을 사용해서 테이블을 매핑시킬 수 있습니다. 아래는 Jpa에서 엔티티 클래스에 적용되는 어노테이션들입니다. 테이블을 매핑하는 어노테이션 : @Table, @Entity기본키를 설정하는 어노테이션 : @Id필드와 컬럼에 연관되는 어노테이션: @Column,@Enumerated,@Temporal,@Transient,@A..
목차1.Jpa ? 2.ORM ?3.Jpa의 장단점 1.Jpa?jpa는 Java Persistence API로 자바 진영의 ORM 기술 표준을 사용되는 인터페이스의 모음이다. 한마디로 말하자면 실제적으로 구현된것이 아니라 구현된 클래스와 매핑을 해주기 위해 사용되는 프레임워크이다. JPA를 구현한 대표적인 오픈소스로는 Hibernate가 있다. Jpa를 알기 전에 ORM에 대해서 알아보도록 하자.2.ORM ?ORM은 Object Relation Mapping으로 객체 지향 프로그래밍 언어와 관계형 데이터베이스 간의 데이터를 변환하는 기술을 의미합니다. 즉, ORM은 데이터베이스 테이블을 객체로 매핑하고, 객체 간의 관계를 데이터베이스의 관계로 매핑하여 개발자가 SQL 쿼리를 직접 작성하지 않고도 객체를 ..