EJB3.0里的实体bean主键产生类型有一种是 GenerationType.TABLE, 数据表如下:

里面有的一条示例数据:
| gen_key | gen_value |
| VENDOR_PART_ID | 5 |
部分代码如下:
@SuppressWarnings("serial")
@Entity
@Table(name="vendorpart")
public class VendorPart implements Serializable {
private Long vendorpartNumber;
private String myDescription;
private double price;
private Vendor vendor;
private Part part;
@TableGenerator(
name="vendorPartGen", // 命名表产生器
table="sequencegenerator", // 表产生器产生主键的表
pkColumnName="gen_key", // 主键表中主键列名
pkColumnValue="VENDOR_PART_ID", // 主键表中某个主键列
allocationSize=10,
valueColumnName="gen_value" // 主键表中主键值的列名
)
@Id
@Column(name="vendorpartnumber")
@GeneratedValue(strategy=GenerationType.TABLE,generator="vendorPartGen") // 产生器名字
public Long getVendorpartNumber() {
return vendorpartNumber;
}
public void setVendorpartNumber(Long vendorpartNumber) {
this.vendorpartNumber = vendorpartNumber;
}
// 。。。。
}
本文介绍EJB3.0中实体Bean使用GenerationType.TABLE方式生成主键的具体实现,通过示例展示了如何配置及使用表生成器来为VendorPart实体类自动生成主键。
74

被折叠的 条评论
为什么被折叠?



