분류 전체보기

· JPA
들어가기 네트워크를 통해 DB에 접근(Ex. 실제 운영하는 서비스)하는 시간 비용은 애플리케이션 서버 내부 메모리에 접근하는 시간보다 훨씬 비싸다. 이러한 부담을 줄이고 성능을 높이기 위해 Hibernate와 같은 JPA 구현체들은 캐시(Cache)를 지원한다. 캐시를 사용하면 매번 필요한 데이터를 DB에서 조회하지 않고, 캐싱해둔 데이터를 통해 DB 접근 횟수를 줄여 애플리케이션의 성능을 향상 시킬 수 있다. 💡 1차 캐시 (First Level Cache) 1차 캐시란? : JPA 영속성 컨텍스트 내부에 존재하는 캐시(Chache)로, EntityManager로 조회/변경하는 모든 엔티티가 1차 캐시에 저장된다. ✔️ 1차 캐시 특징 1차 캐시는 트랜잭션 범위 내에서만 동작하여 트랜잭션이 시작하고 종..
· JPA
💡 영속성 컨텍스트란? 영속성 컨텍스트(Persistence Context)는 Entity를 영구 저장하는 환경으로, 애플리케이션과 데이터베이스 사이에서 객체를 보관하는 가상의 데이터베이스 같은 역할을 한다. JPA는 EntityManager, 영속성 컨텍스트를 통해 데이터의 상태 변화를 감지하고 상황에 맞는 쿼리를 수행한다. EntityManager에 Entity를 저장하거나 조회하면 EntityManager는 영속성 컨텍스트에 Entity를 보관하고 관리한다. * EntityManager - EntityManager는 JPA에서 제공하는 인터페이스로, 영속성 컨텍스트 내에서 Entity를 관리한다. 💡 Entity 생명주기 Entity의 생명주기에는 4가지 상태가 있다. ✔️ 비영속 상태 (new /..
· JPA
💡 ORM이란? ORM(Object-Relational-Mapping), 객체-관계 매핑 : 객체와 관계형 데이터베이스를 자동으로 매핑(연결)해주는 것을 의미한다. 객체 지향 프로그래밍의 클래스와 관계형 데이터베이스의 테이블을 자동으로 매핑한다. 객체 모델과 관계형 모델 사이에는 패러다임 불일치가 존재하는데, ORM을 통해 객체간 관계를 바탕으로 SQL을 자동으로 생성하여 불일치를 해결한다. 패러다임 불일치 - 객체 지향에는 상속, 추상화, 다형성 등의 고유한 특성이 존재하지만, 데이터베이스는 이러한 특성이 존재하지 않는다. 각각의 기능과 표현 방법이 다르다는 것을 의미한다. ORM은 대부분의 프로그래밍 언어에 존재한다. ✔️ ORM의 장점과 단점 장점 객체 지향적인 코드 ORM을 사용하여 SQL 문이 ..
· Spring
들어가기 Spring 프레임워크에는 웹 계층에서 서블릿(Servlet) API를 기반으로 클라이언트의 요청을 처리하는 Spring MVC가 있다. * 서블릿(Servlet) 이란? - 동적 웹 페이지 생성을 위한 Java 기반의 웹 애플리케이션 프로그래밍 기술이다. - MVC 패턴에서 Controller로 사용된다. 💡 MVC 패턴이란? MVC 패턴은 애플리케이션을 개발할 때 사용하는 디자인 패턴으로, 애플리케이션의 개발 영역을 Model, View, Controller 세 영역으로 구분하여 각각 역할에 맞게 코드를 작성하는 개발 방식이다. MVC 패턴은 사용자 인터페이스(View)로부터 비즈니스 로직(Model)을 분리하여 관리하고, View와 Model의 상호작용을 연결시켜주는 브릿지(Controll..
코냥이
'분류 전체보기' 카테고리의 글 목록 (4 Page)