Witam. Mam problem z dodawaniem rekordów do bazy danych.
Oto kod:
//Mam klasę kat
public class kat {
private Long id;
private String nazwa;
//gettery i settery
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getNazwa() {
return nazwa;
}
public void setNazwa(String nazwa) {
this.nazwa = nazwa;
}
}// END
Oraz plik mapujący ją: kat.hbm.xml
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE hibernate-mapping PUBLIC "-*Hibernate/Hibernate Mapping DTD 3.0*EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> <hibernate-mapping package="ds"> <class name="kat" table="Category"> <id name="id" column="id_c"><generator class="native" /></id> <property name="nazwa" column="NAME" type="string" not-null="true" /> </class> </hibernate-mapping>Problem polega na tym że nie mogę zapisać obiektu w bazie:
//Tworzę nowy obiekt kat i chcę go zapisać bazie
kat k=new kat();
k.setNazwa("jakas kategoria");
session.save(k);
...
....
itd
Hibernate wywala błąd:
Kolumna 'CAT_ID' nie akceptuje wartości NULL.
Proszę o pomoc bo nie mogę sobie z tym sama poradzić.
Według mnie klucz ID powinien być generowany automatycznie.