繁体   English   中英

如何使用休眠注释

[英]How to use Hibernate annotations

我已经在DB下表:

并想让@Entity ExchangeRates休眠,例如followng POJO:

class ExchangeRates{
    List<Currency> currencies;
}

class Currency{
    Long Id;
    String name;
    List<Rate> exchangeRates;
}

class Rate{
    Currency currency;
    BibDecimal rate;
}

可以建议我如何使用休眠注释执行此操作吗?

如果您有两个具有ManyToMany关系的Entities ,则将有一个引用两者的JoinTable。

该表例如如下所示:

Name: EX_CUR
Column 1:CUR_ID
Column 2:EX_ID

和这样的实体:

@Entity
@Table(name="currencies_fixed_exchange_rates")
class ExchangeRates{

    @Id
    Long id;

    @ManyToMany
    @JoinTable(
      name="EX_CUR",
      joinColumns=@JoinColumn(name="CUR_ID", 
      referencedColumnName="ID"),
      inverseJoinColumns=@JoinColumn(name="EX_ID", 
      referencedColumnName="ID"))
    List<Currency> currencies;
}

@Entity
@Table(name="currencies")
class Currency{

    @Id
    Long Id;

    @Column
    String name;

    @ManyToMany(mappedBy="currencies")
    List<Rate> exchangeRates;
}

@Entity
@Table
class Rate{

    @Id
    Long id;

    @OneToOne
    Currency currency;

    @Column
    BigDecimal rate;
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM