首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >查找列的Hibernate注释

查找列的Hibernate注释
EN

Stack Overflow用户
提问于 2016-05-19 13:54:24
回答 1查看 477关注 0票数 0

我有三张桌子: po_dtl和workbook_types。每个采购订单行(po_dtl)都将有"workbook_code“列来引用workbook_types。基本上,po_dtl.workbook_code只是workbook_types.workbook_code的查找代码。

简化的java类是

代码语言:javascript
复制
@Entity
@Table(name="po_dtl")
public class PurchaseOrderDtl {
    @Id
    @Column(name = "po_dtl_id")
    @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "po_dtl_s")
    @SequenceGenerator(name = "po_dtl_s", sequenceName = "po_dtl_s", allocationSize = 1, initialValue = 1)
    private long id;

    @Column(name = "price_base", length = 7)
    private int priceBase;

    // ??? What is the annotation for workbook_Types?
    private WorkbookType workbookType;

    ....
}

而workbook_types

代码语言:javascript
复制
@Entity
@Table(name = "workbook_types")
public class WorkbookType {

    @Id
    @Column(name = "workbook_code")
    private String workbookCode;

    @Column(name = "description", length = 255)
    private String description;

    @Column(name = "file_root_path", length = 255)
    private String fileRootPath;
    ....
}

我所使用的(没有hibernate)是:

  • workbook_types.workbook_code包含字符串"wbook_finance“、"wbook_marketing”
  • 每个po_dtl.workbook_code将包含"wbook_finance“或"wbook_marketing”
  • workbook_types只包含带有唯一workbook_code的2行,而po_dtl将包含许多行,但每一行必须只包含"wbook_finance“或"wbook_marketing”。

谢谢

EN

回答 1

Stack Overflow用户

发布于 2016-05-19 14:21:52

正如我理解您的问题一样,您需要@ManyToOne或使用enum,如果只在开发阶段添加了新的workbook_type。

代码语言:javascript
复制
@Entity
class Country  { //Country Dictionary

}

@Entity
class User {
    @ManyToOne
    private Country country;
}

请参阅How to design tables for data dictionary when using hibernate?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37325409

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档