Simple embeddable class
@Embeddable
@Access(AccessType.FIELD)
data class Price(
@Column(name = "price_current")
val current: BigDecimal = BigDecimal.ZERO,
@Column(name = "price_strike")
val strike: BigDecimal = BigDecimal.ZERO,
)
An example of usage
data class Entity(
@AttributeOverrides(
value = [
AttributeOverride(name = "current", column = Column(name = "previous_price_current")),
AttributeOverride(name = "strike", column = Column(name = "previous_price_strike")),
]
)
@Embedded
var previousPrice: Price,
@AttributeOverrides(
value = [
AttributeOverride(name = "current", column = Column(name = "new_price_current")),
AttributeOverride(name = "strike", column = Column(name = "new_price_strike")),
]
)
@Embedded
var newPrice: Price
)
Useful links