我正在开发一个应用程序,通过Hibernate框架访问运行SQL Server 2012的数据库.但是,我无法弄清楚如何使SequenceGenerator注释的实例工作; 每当我尝试将新对象实例保存到数据库表时,我都会收到异常.要保存的类如下:
import java.io.Serializable;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;
@Entity
@Table(name="MESSAGES")
public class Message implements Serializable {
private static final long serialVersionUID = -3535373804021266134L;
@Id
@Column(name="MESSAGE_ID")
@GeneratedValue(strategy=GenerationType.SEQUENCE, generator="MESSAGE_GEN")
@SequenceGenerator(name="MESSAGE_GEN", sequenceName="MESSAGE_SEQ", initialValue=1, allocationSize=1)
private Long id;
@Column(name="TEXT")
private String text;
public Message(String text) {
this.text = text;
}
public Long getId() {
return id;
}
public String getText() {
return text;
}
}
Run Code Online (Sandbox Code Playgroud)
一个引起问题的情况可能是以下交易:
import org.hibernate.Session;
public class Manager { …Run Code Online (Sandbox Code Playgroud)