![](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/cKWFsK/btqEF6fXOdX/fOe5yUHSNMKb5JQSSuQbQk/img.png)
1. Enum은 특정스트링을 상수값에 대입하여 편리하게 사용하는 방법이다. 2. 예를 들면 public enum Level { SEVERE, DEBUG, WARNING, INFO } public enum School { ELEMENTARY, MIDDLE, HIGH, TERINARY } 3. Annotation 설명 3-1 @Enumerated - Enum Type에 사용한다. 3-2 속성 EnumType은 어떤 형식으로 데이터베이스에 저장할지를 지정한다. Integer와 String이 가능하다. 4. 예제 작성 4-1 바로 이전 포스트의 세팅을 그대로 사용한다. 4-2 Level enum package pe.pilseong.hibernate_embedded.entity; public enum Level ..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/ok3Xt/btqEFKqNwnF/9KvCb8WLEWmcW1o8qoagr0/img.png)
1. 이 포스트는 반복되는 형태의 저장 속성에 효율적으로 사용가능한 @Embedded 관한 포스팅이다. 2. 하이버네이트는 다룰 수 있는 Type을 Entity와 그 외로 나눌 수 있다. 2-1 Entity는 데이터베이스 테이블을 표현하는 하나의 자바클래스로 @Entity로 수식하고 테이블로 인식한다. 2-2 그 외로 Value값 String, Integer, Double 같은 일반적인 자바와 데이터베이스의 값들이 있다. 3. Value 값들의 분류 3-1 일반적인 String ,Integer, Double, Date 같은 데이터베이스의 속성 값들 3-2 두번째는 @ElementCollection을 사용하는 Collection 2-4 마지막으로는 이런 Value 값들의 집합인 Embedded 4. Emb..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/7fKnX/btqEC8FIOpf/yQjJ4C3Ymsr04q3OH7PDQk/img.png)
0. 이 포스트는 하이버네이트 Annotation으로 SortedMap, SortedSet을 사용하는 방법이다. 0-1 이 두 Collection은 각 AbstractMap, AbstractSet을 구현하고 있다. 0-2 따라서 각 SotedSet, SortedMap을 구현한 NavigatableSet, NavigableMap을 상속하는 클래스를 사용해야 한다. 0-3 Set의 경우는 TreeSet이고 Map의 경우는 TreeMap이 된다. 1. Sorted 컬렉션은 데이터베이스에서 데이터를 저장 할 때 컬렉션의 정렬 기준을 지정해 주어야 한다. 1-1 데이터베이스 검색에서 @OrderBy는 데이터베이스 쿼리 내의 검색 결과의 정렬이기 때문에 1-2 collection에 저장하는 순간 Sorted 컬렉션..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/TBpMw/btqEChi48vq/3s2KMec6KHL5PcZs19JKM1/img.png)
1. 이 포스트는 javax.persistence @OrderBy annotation을 설명한다. 2. @OrderBy는 데이터베이스의 Query 구문의 Order by 구문과 동일한 효과를 가진다. 2-0 @OrderBy("fieldname [ASC | DESC] ") 형식으로 사용된다. 2-1 데이터베이스 실행 시 가장 끝에 order by가 붙으며 지정된 field와 정렬 순서가 그대로 삽입된다. 2-2 가지고 올 때도 순서를 지정하기 때문에 List, Set, Map에서는 의미가 있다. 2-3 하지만, 별도의 Comparator를 지정해야 하는 SortedMap, SortedSet에는 의미가 없다. 2-3-1 가져올 때 순서가 있어도 실제 Collection에 저장할 때 기본값으로 설정된 정렬기준..
- 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
- WebMvc
- Spring Security
- XML
- MYSQL
- 외부파일
- login
- Security
- spring boot
- mapping
- 설정하기
- Validation
- hibernate
- 하이버네이트
- crud
- form
- Rest
- one-to-many
- Angular
- Spring
- RestTemplate
- 스프링부트
- 자바
- 설정
- 매핑
- 상속
- one-to-one
- jsp
- 로그인
- 스프링
- Many-To-Many