我使用Eclipse - >来自Tables的JPA实体从mysql数据库中生成实体。所有表格'主键 - ids是int(11)AI PK。所以不是int或long,而是我为所有键获取String。我做错了什么?
谢谢!
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
@Column(name="LOCATION_ID")
private String locationId;
答案 0 :(得分:2)
Eclipse无法正确解析主键的数据类型(int(11)
)。因此,Eclipse无法将适当的数据类型解析为Java类型映射。由于缺少该映射,Eclipse将主键属性的数据类型默认为String
。您可以从数据类型中删除显示宽度属性(即(11)
),Eclipse应该能够更恰当地映射数据类型。
答案 1 :(得分:0)
刚刚在生成实体时发现,点击id和eclipselink将允许您选择映射类型。选择int而不是String就可以了。