父级中的单个主键 table 多个外键休眠子级 table
Single Primary key in parent table Multiple Foreign key hibernate child table
我有一个 Tables 类别,雇员
员工 Table 有列
Id Name
--- ----
1 Programmer
2 Manager
3 juniorprogrammer
4 seniorprogrammer
Child table
id categoryid subcategoryid empid Dateofjoin
-- ---------- ------------- ----- ----------
1 2 Null 177 12-Dec-13
2 1 3 179 12-Dec-13
3 1 4 180 12-Nov-12
我为这两个表创建了一个 Pojo class,我必须从这些表中执行 select 查询。
可能的输入参数(empid)
我需要使用 hibernate 获取 categoryid 和 subcategoryid 的相关名称
我是 Hibernate 的新手,谁能帮我做一个 select 查询。
谢谢,
米顿
您需要阅读的内容是 Hibernate Enumerated Types
简而言之,有几种方法可以做你想做的事,我可以建议 2:using java enum and separate table:
- 不要创建类别 table,而是将 categoryid 列替换为 java 中的
@Enumerated(EnumType.STRING)
注释字段。这样,hibernate 会将枚举 .toString() 方法结果作为数据库列名。
- 如果您需要类别 table 那么您需要创建另一个
@Entity @Table
类别 POJO 来表示您的类别 table,然后将其映射为 @ManyToOne
如果您不考虑类别 table 中的任何其他列,我建议您采用第一种方式。 (除非你有一个完全像这样的任务)
我有一个 Tables 类别,雇员 员工 Table 有列
Id Name
--- ----
1 Programmer
2 Manager
3 juniorprogrammer
4 seniorprogrammer
Child table
id categoryid subcategoryid empid Dateofjoin
-- ---------- ------------- ----- ----------
1 2 Null 177 12-Dec-13
2 1 3 179 12-Dec-13
3 1 4 180 12-Nov-12
我为这两个表创建了一个 Pojo class,我必须从这些表中执行 select 查询。
可能的输入参数(empid)
我需要使用 hibernate 获取 categoryid 和 subcategoryid 的相关名称
我是 Hibernate 的新手,谁能帮我做一个 select 查询。
谢谢, 米顿
您需要阅读的内容是 Hibernate Enumerated Types
简而言之,有几种方法可以做你想做的事,我可以建议 2:using java enum and separate table:
- 不要创建类别 table,而是将 categoryid 列替换为 java 中的
@Enumerated(EnumType.STRING)
注释字段。这样,hibernate 会将枚举 .toString() 方法结果作为数据库列名。 - 如果您需要类别 table 那么您需要创建另一个
@Entity @Table
类别 POJO 来表示您的类别 table,然后将其映射为@ManyToOne
如果您不考虑类别 table 中的任何其他列,我建议您采用第一种方式。 (除非你有一个完全像这样的任务)