Код: Выделить всё
import com.fasterxml.jackson.annotation.JsonIgnore;
import org.hibernate.annotations.NotFound;
import org.hibernate.annotations.NotFoundAction;
import java.util.UUID;
import jakarta.persistence.CascadeType;
import jakarta.persistence.Column;
import jakarta.persistence.Entity;
import jakarta.persistence.Id;
import jakarta.persistence.JoinColumn;
import jakarta.persistence.ManyToOne;
import jakarta.persistence.OneToOne;
import jakarta.persistence.Table;
import lombok.Getter;
import lombok.Setter;
@Entity
@Table(name = "available_routes")
@Getter
@Setter
public class AvailableRoutes {
@Id
@Column(name = "id", nullable = false)
private UUID id;
@ManyToOne
@JoinColumn(name = "account_group_internal_id")
@JsonIgnore
private AccountGroup accountGroup;
@Column(name = "city_id")
private String cityId;
@OneToOne(cascade = {CascadeType.PERSIST})
@JoinColumn(name = "account_config_internal_id", nullable = true)
@NotFound(action = NotFoundAction.IGNORE)
private AccountConfiguration accountConfiguration;
}
import java.util.UUID;
import jakarta.persistence.Column;
import jakarta.persistence.Entity;
import jakarta.persistence.Id;
import jakarta.persistence.Table;
import lombok.Getter;
import lombok.Setter;
@Entity
@Table(name = "account_configurations")
@Getter
@Setter
public class AccountConfiguration {
@Id
@Column(name = "internal_id", nullable = false)
private Long internalId;
@Column(name = "id", nullable = false)
private UUID id;
}
@Entity
@Table(name = "account_groups")
@Getter
@Setter
public class AccountGroup {
@Id
@Column(name = "internal_id", nullable = false)
private Long internalId;
@Column(name = "id", nullable = false)
private UUID id;
@OneToOne(fetch = FetchType.LAZY, mappedBy = "accountGroup")
private TravelConfiguration TravelConfiguration;
}
import com.fasterxml.jackson.annotation.JsonIgnore;
import java.util.UUID;
import jakarta.persistence.Column;
import jakarta.persistence.Entity;
import jakarta.persistence.Id;
import jakarta.persistence.JoinColumn;
import jakarta.persistence.OneToOne;
import jakarta.persistence.Table;
import lombok.Getter;
import lombok.Setter;
@Entity
@Table(name = "travel_configurations")
@Getter
@Setter
public class TravelConfiguration {
@Id
@Column(name = "internal_id", nullable = false)
private Long internalId;
@Column(name = "id", nullable = false)
private UUID id;
@OneToOne
@JoinColumn(name = "account_group_internal_id")
@JsonIgnore
private AccountGroup accountGroup;
}
< /code>
Когда я пытаюсь удалить вход в viewablederous, я получаю ошибку: < /p>
org.springframework.dao.InvalidDataAccessApiUsageException: org.hibernate.TransientObjectException: persistent instance references an unsaved transient instance of 'com.domain.AvailableRoutes' (save the transient instance before flushing)
at org.springframework.orm.jpa.EntityManagerFactoryUtils.convertJpaAccessExceptionIfPossible(EntityManagerFactoryUtils.java:368) ~[spring-orm-6.2.7.jar!/:6.2.
.......
Caused by: org.hibernate.TransientObjectException: persistent instance references an unsaved transient instance of 'com.domain.AvailableRoutes' (save the transient instance before flushing)
Подробнее здесь: https://stackoverflow.com/questions/796 ... ption-pers