Я новичок в Hibernate, и мне нужна помощь.
У меня есть таблица с именем Kasa с 3 атрибутами - id, address и account_id. В моей таблице 12 строк.
Я хочу отобразить это с помощью Hibernate и добавить новый с помощью Java, поэтому я сделал это:
@Entity
@Table(name = "kasa")
public class Kasa {
@Id
@GeneratedValue(generator = "incrementor")
@GenericGenerator(name = "incrementor", strategy = "increment")
@Column(name = "ID_KASA")
private int id;
@Column(name = "ADRES")
private String adres;
@Column(name = "ID_KONTO")
private int id_konta;
}
У меня также есть геттеры и сеттеры, но мне не нужно их копировать.
Теперь я хотел бы добавить новую строку в мою базу данных, например:
EntityManagerFactory entityManagerFactory =
Persistence.createEntityManagerFactory("org.hibernate.jpa");
Kasa kasa = new Kasa();
kasa.setId(1);
kasa.setAdres("Kolorowaa");
kasa.setId_konta(2);
EntityManager entityManager =
entityManagerFactory.createEntityManager();
entityManager.persist(kasa);
entityManager.getTransaction().commit();
entityManagerFactory.close();
И я получаю ошибку вот так:
javax.persistence.PersistenceException: org.hibernate.PersistentObjectException: отдельная сущность передана в постоянное состояние: model.beans.Kasa
Он указывает на эту строку: entityManager.persist (kasa);
Я думаю, что проблема может быть связана с ID моего класса 'Kasa', потому что он генерируется автоматически.
Для своей конфигурации я использую файл persistence.xml - соединение с БД работает нормально. Просьба помочь:)