전체 글

· Spring/JPA
* 연관관계 매핑시 고려사항 3가지 1. 다중성 : 다대일 , 일대다 , 일대일 , 다대다 2. 단방향 / 양방향 : 테이블 - 외래키 하나로 양쪽 조인 가능 ( 방향 개념 X ) 3. 연관관계 주인 = 외래키(FK) 를 가지고 있는 엔티티 연관관계 주인이 먼저 등장 * 다대일 (N : 1) ▶ 가장 많이 사용 ◀ ※ 연관관계 주인은 '다(N)' 이다. ※ 실선 화살표 : 값 입력이 가능한 연관관계 / 점선 화살표 : 조회만 가능한 연관관계 (주) Member -> (종) Team 으로의 단방향 연관관계가 메인이다. 양방향 연관관계를 위해 (종)Team -> (주)Member 로의 연관관계를 추가 한다고 해서 테이블 구성이 달라지지 않는다. ( (종)Team -> (주)Member 연관관계는 조회 전용이..
· Spring/JPA
연관관계 객체의 연관관계와 테이블의 연관관계는 서로 간극이 존재한다. 객체는 참조를 사용하여 연관된 객체를 찾는다. 테이블은 외래키를 사용하여 연관된 테이블을 찾는다. 따라서, ORM에서 "객체의 참조와 테이블의 외래키를 매핑" 하는 것이 중요하다. 양방향 연관관계에서는 연관관계의 주인 설정이 중요하다. 연관관계의 주인은 "외래키의 위치" 와 같다. Member 와 Team의 연관관계에서 주인은 외래키를 가지고 있는 "Member" 이다. 연관관계의 주인은 '주', 주인이 아닌 것은 '종'으로 표기하겠다. ex) 주(Member) / 종(Team) * 주(Member) -> 종(Team) 연관관계 * @ManyToOne : Member.class의 입장에서, Team.class를 본 관점. @JoinCo..
· Spring/JPA
> 1. JPA 내부 동작 방식 2. Object - RDB : Mapping * Entity Mapping * 1. 'Object - Table' Mapping @Entity @Entity가 붙은 클래스 == JPA에서 관리하는 클래스 ※ 기본 생성자 필수 (피라미터가 없는 public, protected 생성자) @Table : 엔티티와 매핑할 테이블 지정 2. 'Field - Column' Mapping @Column : 컬럼 매핑 §주요 옵션 name : 필드와 매핑할 테이블의 컬럼 이름 nullable : null 값 허용 여부 unique : unique 제약 조건 columnDefinition : 데이터베이스 컬럼 정보를 직접 부여 @Enumerated : enum 타입 매핑 value = ..
* 패킷 캡쳐 * [1-1. 캐시 제거] 크롬 확장 프로그램 "Clear Cache"를 이용해서 캐시 제거 브라우저 오른쪽 상단 이미지 버튼 클릭. [1-2. 접속 대상 사이트 선정] ※ https = http (HyperText Transfer Protocol) + Secure(보안) https 는 보안 기능이 추가 되어있기 때문에, http를 사용하는 사이트를 대상으로 선택한다. "주의 요함" 문구가 써있으면, http 를 사용하는 사이트 사이트 선정 - http://www.basics.re.kr/ [1-3. TCP 3-Way Handshaking 과정 살펴보기] [패킷 캡쳐 시작하기] [나의 ip 주소 찾기] [ "http://www.basics.re.kr/" 사이트 접속 후 TCP 3-Way Ha..
· Spring/JPA
1. 영속성 컨텍스트란? 영속성 컨텍스트는 "엔티티를 영구 저장하는 환경"을 의미한다. 영속성 컨텍스트는 '논리적인 개념' 이다. Entity Manager를 통해 영속성 컨텍스트에 접근 한다. 2. 엔티티의 상태 1. 비영속 (new / transient) 2. 영속 (managed) 3. 준영속 (detached) 4. 삭제 (removed) 3. 영속성 컨텍스트의 이점 [영속성 컨텍스트의 구성요소] [3-1. 1차 캐시] 로그를 보면, 순서가 이상한 것을 볼 수 있다. 코드를 보면 아래의 순서로 출력되어야 할 것 같다. 1. member 객체 생성 -> 출력 X 2. "==== BEFORE ====" 출력 3. DB 저장 쿼리 출력 (insert 문) 4. "==== AFTER ====" 출력 5...
[ 문제 발생 : 한글이 깨지는 오류 ] login.html 파일 내 한글이 깨지는 오류는 파일 인코딩 설정이 UTF-8 이 아닌 다른 것이기 때문이다. 파일 인코딩 설정을 UTF-8 로 바꿔보자. [ Properties(설정) ] [File encoding : 'MS949' -> 'UTF-8' 로 변경] [ 결과 : 한글 깨지는 오류 해결! ]
내가 잘한다 했잖아
도롱도롱