![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/mqHGB/btqEEgqZiI7/dgR25KKwLMUxedmPzT8EBK/img.png)
0. 이 포스트는 상속 매핑의 Mapped Superclass 정책에 대해서 작성한다. 1. Mapped Superclass 정책 1-1 자식 클래스만 @Entity로 수식되고 테이블로 전환된다. 1-2 자식 클래스는 상속받은 field 까지 테이블에 저장한다. 1-3 부모 클래스는 Entity가 아니므로 부모클래스를 받아 올 때는 HQL 같은 별도의 작업이 필요하다. 2. 장점과 단점 2-1 장점 2-1-1 간단하고 단순한 구현이다. 2-1-2 상속 구조 자체가 없기 때문에 속도가 빠르다. 다만 부모 클래스 객체를 만들기 까다롭다. 2-1-2-1 부모 클래스를 사용하려면 abstract를 제거해야 생성이 가능하고 query를 별도로 작성한다. 2-2 단점 2-2-1 부모를 받기 위해서는 HQL을 별도로..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/brJyRq/btqEENvqjSW/7G2DuEucDTd4HPH1d2WKQK/img.png)
0. 이 포스트는 상속 매핑의 Joined Table 정책에 대해서 작성한다. 1. Joined Table 정책 1-1 모든 클래스는 테이블로 전환된다. 1-2 상속의 기능은 테이블의 관계로 처리되고 외래키 설정으로 이루어진다. 1-3 Entity 클래스를 가져올 때 내부적으로 여러 테이블 간의 Join으로 반환값이 만들어 진다. 2. 장점과 단점 2-1 장점 2-1-1 정규화된 테이블 구조를 가진다. 2-1-2 중복이 없고 데이터의 무결성이 보장된다. 2-2 단점 2-2-1 모든 entity 작업에 join이 필요하다. 그래서 느리다. 3. Joined Table 정책을 사용하려면 아래의 설정이 필요하다. 3-1 부모클래스의 상속 설정에서 Joined Table 정책을 지정한다. @Inheritance..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/RZevC/btqEEfyT5YA/X9sD9PuT35NLK5IVHKDARk/img.png)
0. 이 포스트는 Table Per Class 정책에 대해서 설명한다. 1. Table Per Class 1-1 이 정책을 사용하면 자식 클래스(non-abstract class)들이 생성된다. 1-2 부모의 속성도 같이 테이블에 포함되어 생성된다. 1-3 부모클래스에서 ID 생성 정책을 TABLE로 사용하여 자식클래스의 ID를 동기화 시킨다. 1-3-1 별도의 sequence 테이블이 생성되고 여기에서 사용한 id가 관리 된다. 1-4 여러 개의 쓰레드가 ID테이블을 접근할 수 있으므로 스레드풀 갯수를 늘여줘야한다. 2. Table Per Class 장단점 2-1 장점 2-1-1 간단하고 직관적인 구현방식이다. 2-1-2 각 자식클래스에 대한 query 수행이 빠른 편이다. 2-2 단점 2-2-1 부모..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/ee7c8R/btqEFXqdSjz/SSlU4HlaK31ie18wxFgdM1/img.png)
1. 이 포스트와 앞으로 3개의 포스트는 하이버네이트의 Inheritance Mapping에 대해서 설명한다. 1-1 클래스의 상속 구조를 데이터베이스에 매핑하는 정책은 4가지가 있다. 1-1-1 Single Table Strategy - 하나의 클래스에 모든 자식클래스 정보까지 다 때려 넣는다. 1-1-2 Table per Class Strategy - 자식 클래스 마다 테이블이 생성되는데 공통 id를 위한 추가 테이블이 생성된다. 1-1-3 Joined Table Strategy - 부모클래스, 자식클래스 모두 하나 씩 생성된다. 자식클래스는 고유의 속성만 가진다. 1-1-4 Mapped Superclass Strategy - 자식 클래스 마다 테이블이 생성된다. 부모클래스는 완전히 역활이 없다. 2..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/Pneic/btqDSzrEQlF/hBOChkUyXNfKZSs81i7nmk/img.png)
0. 데이터베이스에서 foreign를 가진 쪽은 무조건 하나의 참조 row를 가질 수 밖에 없다. 0-1 그렇기 때문에 관계를 맺는 상대방은 무조건 one side가 된다. 0-2 자신은 상황에 따라 one 혹은 many가 돈다. 1. 아래 설명은 하나의 강사가 여러 과목의 강의를 하고 한 강의는 한명의 강사가 가르친다고 가정한다. 1-1 DB에서는 아래 도면과 같이 OneToOne, OneToMany명기가 명확하지 않다. 1-2 설계자가 어떻게 사용하는가에 방향성과 관계가 결정된다. 2. course table을 추가 한다. 3. Course 클래스를 추가하고 Entity 매핑을 처리한다. 3-1 course 테이블이 강사에 대한 foreign key를 가지고 있으므로 3-1-1 강사는 무조건 one이..
0. Hibernate는 Java JPA를 구현한 ORM 라이브러리이다. 0-1 Object Relational Model은 0-1-1 데이터베이스의 Table과 Entity를 매핑해 주고 0-1-2 읽기, 쓰기, 업데이트, 삭제 등의 기능을 쉽게 제공한다. 0-1-3 이런 기능을 지원하기 위해 ORM라이브러리들은 내부적으로 JDBC 드라이버를 직접 사용한다. 1. dependency를 pom.xml에 추가한다. 1-1 hibernate core 모듈을 추가한다. 1-2 mysql connector를 추가한다. 1-3 lombok은 선택사항이지만 추가하면 편리하다. 재귀 호출 문제로 주의할 점들이 있다. 1-3-1 lombok의 재귀호출문제에 대해 잘 모르면 사용하지 않는 게 속편하다. 어딘가 포스팅 중..
- Total
- Today
- Yesterday
- 도커 개발환경 참고
- AWS ARN 구조
- Immuability에 관한 설명
- 자바스크립트 멀티 비동기 함수 호출 참고
- WSDL 참고
- SOAP 컨슈머 참고
- MySql dump 사용법
- AWS Lambda with Addon
- NFC 드라이버 linux 설치
- electron IPC
- mifare classic 강의
- go module 관련 상세한 정보
- C 메모리 찍어보기
- C++ Addon 마이그레이션
- JAX WS Header 관련 stackoverflow
- SOAP Custom Header 설정 참고
- SOAP Custom Header
- SOAP BindingProvider
- dispatcher 사용하여 설정
- vagrant kvm으로 사용하기
- git fork, pull request to the …
- vagrant libvirt bridge network
- python, js의 async, await의 차이
- go JSON struct 생성
- Netflix Kinesis 활용 분석
- docker credential problem
- private subnet에서 outbound IP 확…
- 안드로이드 coroutine
- kotlin with, apply, also 등
- 안드로이드 초기로딩이 안되는 경우
- navigation 데이터 보내기
- 레이스 컨디션 navController
- raylib
- MYSQL
- 설정
- login
- one-to-many
- Validation
- hibernate
- Spring Security
- Security
- WebMvc
- 하이버네이트
- Angular
- 상속
- one-to-one
- Many-To-Many
- RestTemplate
- 외부파일
- 스프링
- crud
- 자바
- Spring
- XML
- 설정하기
- 매핑
- 스프링부트
- jsp
- Rest
- form
- 로그인
- mapping
- spring boot