我有两个类/域 ( Person) 和 ( Account),它们都有 id 字段@GeneratedValue(strategy = GeneratedType.AUTO)或任何其他字段GeneratedType,但是保存域会导致它们共享主键的序列。
当我保存个人域时,它将使用id=1,然后保存帐户将使用id=2即使它们是完全不同的域,我不想要这个,已经搜索了很长时间但我不知道要搜索的关键字。
编辑:将宠物更改为帐户
我使用 Spring Boot 2.0.4.RELEASE 和 spring-boot-starter-data-jpa。
MySql 是 8.0
我有一个 mappingSuperclass 域类,但是即使我将 Id 分别放在每个类中,它的行为仍然相同..
领域类
package com.myband.band.domain;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.MappedSuperclass;
@MappedSuperclass
public abstract class Domain {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
private int version;
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public int getVersion() {
return version;
}
public void setVersion(int version) {
this.version = version;
}
}
人物类
package com.myband.band.domain;
import javax.persistence.Entity;
@Entity
public class Person extends Domain {
private String firstName;
private String lastName;
private String nickName;
private int age;
public String getFirstName() {
return firstName;
}
public void setFirstName(String firstName) {
this.firstName = firstName;
}
public String getLastName() {
return lastName;
}
public void setLastName(String lastName) {
this.lastName = lastName;
}
public String getNickName() {
return nickName;
}
public void setNickName(String nickName) {
this.nickName = nickName;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
Cats萌萌
摇曳的蔷薇
相关分类