Я работаю над реализацией стратегии отображения таблиц на подклассы, используя Spring Data Jpa и аннотации, мои сомнения касаются функции автоинкремента.
У меня есть два класса, "Persona" и "Jugador", "Jugador "происходит от" Persona ".
Я не знаю, должен ли автоинкремент Id быть аннотирован для родительского класса, дочернего класса или обоих.
Пример кода:
@Entity
@Table(name="personas")
@Inheritance(strategy=JOINED)
public class Persona implements Serializable {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
@Entity
@Table(name="jugadores")
@PrimaryKeyJoinColumn(name="id")
public class Jugador extends Persona {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
Я сомневаюсь, например, когда я думаю, если я сохраню «Jugador» и автоматически увеличиваю ID, что гарантирует, что один и тот же идентификатор в родительской таблице будет идентичным?и если я сделаю автоинкремент только для родительского класса, как дочерний класс обнаружит это, чтобы присвоить себе тот же идентификатор, что и родительский класс, чтобы их можно было объединить?
Я не понимаю, как этобудет вести себя на заднем плане, пожалуйста, помогите.