Java 如果对象已经存在于带有JPA的DB中,如何在保存操作失败
我正试图用JPA将一个对象保存到DB中。对象有两个属性年龄和电子邮件。电子邮件为@Id,类型为String 如果我试图用同一封电子邮件保存两个对象。最后一个对数据库进行更新 如何使最后一次保存失败Java 如果对象已经存在于带有JPA的DB中,如何在保存操作失败,java,spring-boot,jpa,Java,Spring Boot,Jpa,我正试图用JPA将一个对象保存到DB中。对象有两个属性年龄和电子邮件。电子邮件为@Id,类型为String 如果我试图用同一封电子邮件保存两个对象。最后一个对数据库进行更新 如何使最后一次保存失败 class Person { @Id @NotNull @Email private String email; private int age; } 不推荐你走的路 您可以使用下面这样的Person类,只在之前验证电子邮件 class Person {
class Person {
@Id
@NotNull
@Email
private String email;
private int age;
}
不推荐你走的路 您可以使用下面这样的Person类,只在之前验证电子邮件
class Person {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name = "id")
private int id;
@NotNull
@Email
@Column(unique=true)
private String email;
private int age;
}
您可以显示您试图保存的方式吗?不要使用电子邮件字段作为标识符,而是添加额外的自动增量id列供系统使用,然后对电子邮件设置唯一约束。