ОШИБКА - объект ссылается на несохраненный временный экземпляр - PullRequest
0 голосов
/ 12 мая 2019

Я пытаюсь сохранить следующие 2 сущности Person и Company
и получить приведенную ниже ошибку, когда у меня есть CascadeType.PERSIST лично. Однако, когда я изменяю его на CascadeType.ALL, ошибка исчезает. Разве CascadeType.PERSIST не должен служить цели?

У меня many-to-one отношения между Person и Company

Person p1= new Person("GuyOne");
Company c1 = new Company("Amazon");
p1.setcompany(c1);
session.save(p1);

EDIT:

Человек

@Entity

public class Person {

    @Id
    @GeneratedValue(strategy=GenerationType.AUTO)
    int id;


    String name;

    @ManyToOne(cascade=CascadeType.PERSIST)
    @JoinColumn(name="company_id")
    Company company;

    public Person()
    {}

    public Person(String name) {
        super();
        this.name = name;

    }




    public int getId() {
        return id;
    }


    public void setId(int id) {
        this.id = id;
    }


    public String getName() {
        return name;
    }


    public void setName(String name) {
        this.name = name;
    }


    public Company getcompany() {
        return company;
    }


    public void setcompany(Company c) {
        this.company = c;
    }

Компания

@Entity
public class Company {

    @Id
    @GeneratedValue(strategy=GenerationType.AUTO)
    int id;

    String name;

    @OneToMany(mappedBy="company")
    List<Person> persons= new ArrayList<Person>();

public Company()
    {}


    public Company(String name) {
        super();
        this.name = name;
    }

    public List<Person> getPersons() {
        return persons;
    }

    public void setPersons(List<Person> persons) {
        this.persons = persons;
    }



    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...