CREATE TABLE IF NOT EXISTS `ehealthdb`.`timestamp` (
`id` BIGINT(20) NOT NULL AUTO_INCREMENT COMMENT '',
`login_date` DATETIME NULL COMMENT '',
`logout_date` DATETIME NULL COMMENT '',
`create_date` DATETIME NOT NULL COMMENT '',
`update_date` DATETIME NULL COMMENT '',
`isActive` TINYINT(1) NULL COMMENT '',
PRIMARY KEY (`id`) COMMENT '')
ENGINE = InnoDB;
当我尝试使用生成的post URL和以下json负载来使用save时:
{
"loginDate":"1374839856000",
"logoutDate":"1374839856000",
"createDate":"1374839856000",
"updateDate":"1374839856000",
"isActive":true
}
请求处理失败;嵌套异常是javax.persistence.persistenceException:org.hibernate.id.IdentifierGenerationException:在调用save():eHealth.domain.timestamp之前必须手动分配该类的ID
我认为这是由于缺少@GeneratedValue造成的,而scaffolding没有在我的主键上创建它。我必须手动添加它,如下所示:
但还是不行。它仍然是错误的。
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY) //add this
@Column(name = "id", unique = true, nullable = false)
@Basic(fetch = FetchType.EAGER)
@XmlElement
Integer id;
根本不要尝试设置ID字段。它是自动处理的。
使用@GeneratedValue(Srategy=GenerationType.Identity)。确保persistence.xml具有
<property name="hibernate.dialect" value="org.hibernate.dialect.MySQLDialect" />
应该使用Hibnerate版本4或5。
此外,我从未在ID列上看到fetchtype
。把这个拿掉。
@Basic(fetch = FetchType.EAGER)
我这样做:
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
private Long id;
此外,可能应该了解完整的设置。什么版本的Spring?
问题内容: 如何使用注释设置自动递增ID的起始值? 我希望它从250000开始 问题答案: /* * @ORM\Id * @ORM\GeneratedValue(strategy=”SEQUENCE”) * @ORM\SequenceGenerator(sequenceName=”id”, initialValue=250000) * @ORM\Column(type=”integer”) / p
我在应用程序中配置了Spring cloud sleuth(以及zipkin)。我有一个控制器,它调用服务,然后调用存储库,最后调用数据库。 设置工作正常,Sleuth正在生成spans id,它在zipkin中也可见。我想尝试跨多个内部bean和方法创建spans。我遇到了使用注释管理跨度。这似乎不起作用。 当我使用这里提到的任何注释时,如NewSpan或ContinueSpan,自动连接停止工
我有一个名为的下拉字段,其中包含电话、电子邮件等值,还有一个名为的输入字段。如果选择了下拉值,我想验证输入字段的有效电子邮件地址。。。 我试图创建一个自定义约束,将验证字段对电子邮件正则表达式,如果字段将具有值 我有以下自定义约束的代码 验证器就像 问题是它没有在表单上触发...我使用模型对话框,其中要验证的bean被呈现 参考:使用Hibernate验证器进行跨域验证(JSR 303) 期待您的
我有一个简单的类叫BeaconDao 然而,当我用@service或@component标记beaconDao时,一切都运行得非常好。有人能看出问题所在吗?
我尝试使用SmtpAuthenticator创建邮件服务。组件已正确启动,但用户名和密码字段中存在空值。为什么会这样?