Какая аннотация должна идти в поле creditBalances класса User?
таблица кредитных_балансов
CREATE TABLE `credit_balance` (
`user_id` varchar(255) NOT NULL,
`currency` char(3) DEFAULT NULL,
`amount` decimal(12,4) DEFAULT NULL
)
Кредитный класс
@Embeddable
public class Credit {
@Column(name="currency", columnDefinition="CHAR(3)", nullable=false)
Currency currency;
@Column(name="amount", columnDefinition="DECIMAL(12,4)", nullable=false)
BigDecimal amount;
}
Класс пользователя
@Entity
public class User {
@Id
String id;
//What annotation goes here?
Map<Currency, Credit> creditBalances;
}
Мы используем Hibernate 3.4.
Я просмотрел http://docs.jboss.org/hibernate/annotations/3.4/reference/en/html/entity.html#entity-mapping-association-collections, но быстро заблудился.
Уточнение: столбец currency
следует использовать как для ключа карты, так и для поля валюты объекта Credit
.
Возможно ли это в Hibernate?