我在尝试将数据保存到db中的模型时遇到此错误。
@Entity
public class User extends Model {
@Required
public String name;
@Email
public String email;
@Required @MaxLength(value=10)
public String username;
@Required @MinLength(value=4)
public String password;
@Id
public int id;
}
这是我的班级。
这是我尝试将模型保存到db时的错误。
我将非常感谢您的帮助!非常感谢。
编辑:表结构在这里
答案 0 :(得分:10)
我认为使用ebean,你必须在身体上注明并注释你的身份。您可能还必须告诉它后备音序器的名称(我不记得了)。 This显示了如何操作。
答案 1 :(得分:2)
这对我有用:
@Entity
@Table(name = "table", schema = "schema")
public class Bean extends Model{
@Id
@Column(name = "idcolumn")
@SequenceGenerator(name="gen", sequenceName="schema.table_idcolumn_seq",allocationSize=1)
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "gen")
private int id;
}
使用SequenceGenerator时,请注意Hibernate中的这个错误:https://hibernate.atlassian.net/browse/HHH-7232
它强制您将模式直接写入sequenceName,而不是使用SequenceGenerator注释中的模式字段。
答案 2 :(得分:1)
这对我的课堂注释很有用:
@SequenceGenerator(name = "SEQUENCE_NAME", sequenceName = "PST_BUSINESS.S_BUSINESS_DOMAIN")
@Entity
@Table(name = "TB_BUSINESS_DOMAIN", schema = "PST_BUSINESS")
public class PstBusinessDomain extends PstAbstractBaseMappedEntity {
正如Leo所说,这种策略适用于现场和课堂上的注释。