JPA Embedded利用/クイックキャンパスチャレンジ30日目


いよいよ挑戦戦最終日

JPAでのEmbeddedの使用


注文時に価格フィールドあり
価格は供給税、付加税、総額などがあると言えます.
つまり、imbeddyタイプを使うのに適しています.
アドレス情報もimbeddyタイプを用いるのに適しているといえる.
簡単な列でアドレス値を追加UserEntity & UserHistory
private String city;
private String district;
private detail;
private zipCode;
Embeddedの適用AddressEntity
@Embeddable 					//Embedded을 할 수 있는 클래스임을 선언 
@Data
@AllArgsConstructor
@NoArgsConstructor
public class Address{
	private String city;		//시
	private String district;	//구
	private String detail;		//상세주소
	private String zipCode;		//우편번호
}
UserEntity
@Embedded
private Address address;
Result
@Test
void embeddedTest(){
	userRepository.findAll().forEach(Sytstem.out::println);
}
console:
create table user(
	//추가된 컬럼
	city varchar(255),
	detail varchar(255),
	district varchar(255),
	zip_code varchar(255),
    ...
    
> User(super=BaseEntity(createdAt=2021-06-.......), address = null 
また、埋め込まれたオブジェクト内の既存の@Columnでカラムのプロパティを再定義することもできます.
もちろんnullable、column definitionも従来のentityと同じであってもよい.Address Entity
@Column(name="address_detail")
private String detail;
result
console:
	create table user(
   ...
   address_detail varchar(255)
   ...
   )
위와같이 컬럼이름이 detail > address_detail로 변경 된 것을 확인할 수 있다.

#クイックキャンパス#パカムチャレンジ#サラリーマン姜#職場人柄マシン脚#クイックキャンパス後期#使い捨て終了Java/spring Web開発Master超差パッケージオンライン
このレポートは、迅速なキャンパス税還付の課題に参加することを目的としています.
https://bit.ly/3FVdhDa