View DispatcherServlet 을 통해 사용자의 요청을 View 영역에서 받고,받은 요청을 @Controller 영역에 전달@Controller 영역에서는사용자의 요청을 에 알맞게 메소드를 실행 ( Front Controller 방식을 통해 )@Control
객체 와 관계형 데이터베이스를 따로 설계( 객체 <-> 객체 ) ( 관계형 DB <-> 관계형 DB )이 때, ORM 프레임워크 가 중간에서 매핑 한다우리가 일반적으로 알고 있는 애플리케이션 class 와 RDB 의 테이블을 연결한다는 뜻이며, 기술적으로
\+ 영속 상태 : jpa 에 속한 상태 영속성 컨텍스트의 변경내용을 DB 에 반영시키는 것 ( DB 적용 ) 변경 감지된 경우 수정된 엔티티 쓰기 지연 SQL 저장소에 등록할 경우쓰기 지연 SQL저장소의 쿼리를 DB에 전송할 경우em.flush() : 직접호출 트랜
영속성 컨텍스트와 전혀 관계가 없는 새로운 상태영속성 컨텍스트 에 관계되어 있고 관리 되어 있는 상태 영속성 컨텍스트에 저장되었다가 ( 영속 -> 비영속 ) 분리된 상태 remove 를 통해 @Entity 관계에서 삭제된 상태 영속상태에서 분리된 데이터를 말하며,JPA
@Id = Primary Key @GeneratedValue = 시퀀스 적용 회원 가입 및 회원정보 조회 담당 사용자(고객) 의 요청(주문) 을 담당 Member 1명으로 N개의 Order 를 요청할 수 있다.
객체와 테이블 연관관계의 차이를 이해객체의 참조와 테이블 외래 키 (FK) 를 매핑연관관계의 주인 (OWNER)각 매핑된 @Entity 어노테이션을 주석처리한다테이블은 외래 키(FK)로 Join 해서 연관된 테이블을 찾는다객체는 참조를 사용해 연관된 객체 를 찾는다테이
외래 키(FK) 역할을 객체 참조를 통해 선언하는 역할 현재 객체는 Member 가 Team을 가졌으나,Team 은 Member를 가지지 못한다이것이 객체 참조와 외래키 (FK ) 의 가장 큰 차이점테이블은 FK만 있으면 양쪽에 연관관계를 알 수 있다.Member ->
📌 개요 상단의 테이블 구조를 JPA - 연관관계 매핑을 통해 설계하고자 한다 📌 MEMBER 테이블 > 📌 ORDERS 테이블 > 📌 ORDER_ITEM 테이블 > 📌 ITEM 테이블 >
JPA 사용이 가능하며JPA 사용시 앤테티 객체를 중심으로 개발한다단, 검색쿼리 작성시 어렵다검색쿼리시 테이블이 아닌 엔티티 객체를 대상으로 검색&조회 해야한다JPA는 SQL을 추상화한 JPQL이라는 객체 지향 쿼리 언어 제공SQL 과 문법 유사, DDL , where
📌 프로젝션 select 절에 조회할 대상을 지정하는 것 select m from Member m = Member 엔티티 전체 조회 select m.team from Member m = Member 엔티티 에서 team 을 조회 >
특정build.gradle 에서buildscript 추가 dependencies 에implementation 추가\+plugins 아래에 apply 추가build.gradle 맨 아래에 queryDSL 추가build 폴더 우클릭 run Gradle Tasks 실행 최종
**❗ 사용자 ( URI 리소스 ) 와 서버 ( Spring 컨테이너 ) 가 서로 데이터를 주고 받기 위해 사용되는 기법들 ** 📌 PathVariable 경로변수 🤔 바인딩 이란 ? Spring 사용자 관점에서 사용자가 입력한 값을 어플리케이션 도메인 객체에
Spring 컨테이너 내부에서 Item() 데이터를 사용자와 주고 받는 예제 이다. regions, itemType, deliveryCode 는 개발자가 명시된 범위에서 사용자가 요청하게 된다. 해당 비지니스 로직은사용자의 itemId 를 조회하여 item() 데이터를