我正在使用Hibernate 3.3和PostgreSQL 8.x,并希望使用Hibernate注释来映射不是主键的自动递增列.
使用SERIAL类型或Postgres中的序列映射列无关紧要,只要它由数据库而不是Hibernate自动递增即可.我尝试了以下映射,但它们始终生成null orderId.
@Column(name = "orderId", insertable = false)
@Generated(GenerationTime.INSERT)
//@GeneratedValue(strategy = javax.persistence.GenerationType.AUTO)
private Integer orderId;
Run Code Online (Sandbox Code Playgroud)
我将不胜感激任何帮助.
谢谢
我在用
@TableGenerator(name="tab",initialValue=2,allocationSize=50)
Run Code Online (Sandbox Code Playgroud)
on Entities并定义ID
@Id
@GeneratedValue(generator="tab",strategy=GenerationType.TABLE)
private int id;
Run Code Online (Sandbox Code Playgroud)
但Hibernate仍然使用0作为ID.
我不能使用@GenericGenerator,因为Jboss AS7附带的Hibernate4没有附带注释.
有一个简单的解决方案还是我必须编写自定义生成器?