Search
β˜•

javax.persistence μ–΄λ…Έν…Œμ΄μ…˜ μ°½κ³ 

@ElementCollection

β€’
Element 객체의 μ»¬λ ‰μ…˜ 집합이닀.
β€’
Element λ‘œλŠ” κΈ°λ³Έ νƒ€μž…(String, Long λ“±) κ³Ό Embeddable 둜 μ„ μ–Έλœ 객체가 될 수 μžˆλ‹€.
β€’
λΆ€λͺ¨ Entity Id와 μΆ”κ°€ 컬럼(basic or embedded νƒ€μž…)으둜 κ΅¬μ„±λœλ‹€.
β€’
기본적으둜 κ°’ νƒ€μž… μ»¬λ ‰μ…˜μ— λ³€κ²½ 사항(μ €μž₯, μ‚­μ œ)이 λ°œμƒν•˜λ©΄, μ†Œμœ ν•˜λŠ” 엔티티와 μ—°κ΄€λœ λͺ¨λ“  데이터λ₯Ό μ‚­μ œν•˜κ³ , ν˜„μž¬ λ‚¨μ•„μžˆλŠ” 값을 λͺ¨λ‘ λ‹€μ‹œ μ €μž₯ν•œλ‹€.

@CollectionTable

β€’
@Table κ³Ό 같이 Collection 으둜 μ„ μ–Έλœ λ³€μˆ˜μ— λŒ€ν•œ ν…Œμ΄λΈ”μ„ λ§Œλ“€ λ•Œ μ‚¬μš©
β€’
μ—°κ΄€ 객체에 μ˜μ‘΄μ μ΄κΈ°λ•Œλ¬Έμ— μ˜΅μ…˜μœΌλ‘œλŠ” joinColumns 와 foreignKey κ°€ μžˆλ‹€.

@AttributeOverride

β€’
column λͺ…을 μ •μ˜ν•  수 μžˆλ‹€.
@Embedded private Code code; @Embedded private Code teamCode;
Java
볡사
β€’
Embedded 객체λ₯Ό μ‚¬μš©ν•  λ•Œ ν•΄λ‹Ή 객체λ₯Ό μ—¬λŸ¬λ²ˆ μ‚¬μš©ν•˜λ©΄ column λͺ…이 μ€‘λ³΅μœΌλ‘œ λ“€μ–΄κ°ˆ 수 μžˆλ‹€.
β€’
Code 객체 λ‚΄λΆ€μ˜ λ³€μˆ˜ λͺ…은 value λΌμ„œ code column κ³Ό teamCode column 에 κ³΅ν†΅μ μœΌλ‘œ μ μš©λ˜μ–΄ μ˜ˆμ™Έκ°€ λ°œμƒ
@Embedded @AttributeOverride(name = "code", column = @Column(name = "code", nullable = false) private Code code; @Embedded @AttributeOverride(name = "code", column = @Column(name = "team_code", nullable = false) private Code teamCode;
Java
볡사

@MappedSuperclass

β€’
λΆ€λͺ¨ ν΄λž˜μŠ€κ°€ μ—”ν‹°ν‹°κ°€ 아닐 λ•Œ 상속을 ν•΄μ£Όμ–΄μ•Ό ν•˜λŠ” 경우
β€’
보톡 BaseEntity λΌλŠ” 클래슀둜 μ‚¬μš©