11월 2주차

Yullgiii·2023년 11월 12일
0
post-thumbnail

WIL (Week I Learn)

📅 이번 주에는 JPA의 영속성과 관련된 핵심 개념, 스프링 빈, 스프링 시큐리티, RestTemplate, Entity 관계, 지연 로딩, 영속성 전이(Cascade)에 대해 배웠다.

JPA의 영속성 관련 핵심 개념

영속성(Persistence) 📝: 데이터를 생성한 프로그램의 실행이 종료되더라도 사라지지 않는 데이터의 특성을 말한다.

엔터티 매니저 (Entity Manager) 🧭: JPA에서 엔터티 객체를 저장, 수정, 삭제, 조회 등의 작업을 수행하는 인터페이스다.

엔터티 매니저 팩토리 (Entity Manager Factory) 🏭: 엔터티 매니저를 만드는 역할을 하는 클래스다.

엔터티의 생명주기 🔄: 비영속, 영속, 준영속, 삭제 상태가 있다.

영속성 컨텍스트 🧩: 엔터티를 영구 저장하는 환경이다.

플러시 (Flush) 💦: 영속성 컨텍스트의 변경 내용을 데이터베이스에 반영한다.

스프링 빈 (Spring Bean) 🌱

스프링 IoC 컨테이너가 관리하는 객체를 빈(Bean)이라고 한다. 스프링 빈은 스프링 IoC 컨테이너에 의해 인스턴스화, 관리, 생성된다.

스프링 시큐리티 🛡️

인증과 권한 부여를 위한 프레임워크다. 기본적으로 모든 요청은 인증을 필요로 한다.

RestTemplate 🌐

스프링에서 제공하는 HTTP 통신에 유용한 클래스다. HTTP 서버와의 통신을 단순화하며 RESTful 원칙을 따른다.

Entity 관계 🤝

엔터티 간의 관계를 나타내며, 이는 @OneToMany, @ManyToOne, @OneToOne, @ManyToMany 등의 어노테이션으로 표현된다.

지연 로딩 (Lazy Loading) 🕐

엔터티의 연관된 필드 값을 실제로 사용할 때까지 로딩을 지연시키는 방법이다.

영속성 전이(Cascade) 🌊

한 엔터티의 상태 변화가 연관된 다른 엔터티에도 영향을 미치도록 하는 것이다.

회고 🔄

이번 주에는 JPA와 스프링에 대한 깊은 이해를 위해 다양한 핵심 개념을 배웠다. 각각의 개념들이 어떻게 상호작용하는지 이해하게 되면서, 더 효율적이고 안정적인 애플리케이션을 개발하는 데 도움이 될 것이다.
처음에는 어려운 개념들이 많았지만, 공부를 해나가면서 점점 이해가 되는 것을 느꼈다. 다음 주에도 이런 학습의 흐름을 이어가면서, 배운 내용을 토대로 실제 프로젝트에 적용해보는 것을 목표로 하겠다.

profile
공부하는 거북이의 성장일기 🐢

0개의 댓글