Spring

1. 지연로딩엔티티 조회 시 일반 멤버 변수만 먼저 조회되고, 객체(연관관계 엔티티)로 되어 있는 멤버 변수 조회 시, 가짜 객체로 먼저 조회되고, 실제 멤버 변수가 조회될 때, 실제 쿼리를 한번 더 실행시키는 기법이다. 말이 좀 어려운데, 간단한 코드로 보면@Entity@Getter@NoArgsConstructor(access = AccessLevel.PROTECTED)public class Member{ @Id @GeneratedValue @Column(name = "member_id") private Long id; private String name; private int age; // 연관관계 엔티티 @ManyToOne(fetch = FetchType..
1. Spring이란?IoC(제어의 역전)와 DI(의존성 주입)를 통해 객체의 생성과 관리를 프레임워크에 맡겨 개발자의 비즈니스 로직 개발에 집중할 수 있도록 해주는 프레임워크입니다. 예를들어 A, B, C 클래스가 있을때, D라는 클래스를 사용하고싶은 경우, 각각 A, B, C 클래스에 D 클래스를 인스턴스화시켜 사용해야 했습니다. 이를 해결하기 위해서 Spring Framework에선 공통으로 사용하려는 D클래스를 컨테이너에 등록하고, 사용하고 싶을때 가져다 쓸 수 있도록 해주는 프레임워크입니다.  2. DI (Dependency Injection)DI(Dependency Injection, 의존성 주입)는 객체 지향 프로그래밍에서 객체 간의 의존성을 관리하는 방법입니다. 쉽게 말해, 한 객체가 다른..
1. 개요 - 레포지토리란?레포지토리란 엔티티 클래스와 DB간 상호 작용을 추상화하고 이를 구현한 클래스이다. 레포지토리는 도메인 객체를 저장, 수정, 삭제, 조회 등의 CRUD 로직을 추상화하여 제공한다. 여기서 JPA Hibernate와 Spring Data JPA와 비교하면서 설명하겠다. 2. JPA Hibernate 레포지토리와 Spring Data JPA 레포지토리2-1) JPA Hibernate 레포지토리JPA Hbernate는 JPA 표준을 구현한 구현체로, EntityManager를 사용하여 개발자가 직접 구현체를 구현해야한다.// Repository 인터페이스 - Hibernatepublic interface HibernateRepo{ Optional findUser(Long id)..
1. 서론JPA 프로젝트를 진행하면서 공부했던 내용을 정리하고자 한다. 섹션별로 간단히 회고할 예정이다. 2. 엔티티란?JPA에서의 엔티티란 데이터배이스에서 '테이블'과 매핑되는 자바 클래스이다.JPA 엔티티는 DB의 테이블 구조와 매핑되어 객체지향적으로 데이터를 다룰 수 있다.@Entity@Getter@NoArgsConstructor(access = AccessLevel.PROTECTED)public class Employee{ @Id @GeneratedValue private Long id; /* ... */ } 1. @EntitySpring Framework에 엔티티 클래스임을 정의하는 어노테이션. 2. @GetterLombok에서 제공해 주는 getter 메서드 자동 ..
Developer KTU
'Spring' 태그의 글 목록