Hibernate:策略GenerationType.Table如何工作?

时间:2016-04-30 10:48:16

标签: mysql hibernate

我的帐户实体主键是使用 GenerationType.Table stratergy生成的。

@Entity
@Table(name="ACCOUNT")
public class Account {

@Id
@GeneratedValue(strategy=GenerationType.TABLE , generator="tablegenerator")
@TableGenerator(name="tablegenerator", table="ifinances_keys", pkColumnName="PK_NAME",valueColumnName="PK_VALUE")
@Column(name="ACCOUNT_ID")
private Long accountId;

我已经定义了一个表ifinances_key来存储这个生成的密钥,并且在保存数据之后,生成了以下密钥: -

Ifinances_Key表

 PK_NAME,   PK_VALUE
 ACCOUNT    8

我的帐户表包含以下数据:

ACCOUNT_ID | Rest of the columns ---->
200
300
350

当我运行以下查询时

SELECT * FROM account a natural join ifinances_keys b ;

我收到所有数据,即:

ACCOUNT_ID | Rest of the columns ---->
200
300
350

请解释此策略的内部工作以及此Join的工作原理?

0 个答案:

没有答案