Я использую Postgres с Java JPA / Hibernate и хочу, чтобы поле id было создано вручную. каждый раз, когда я создаю экземпляр этого объекта, я в любом случае устанавливаю поле id.
Я пытался в течение нескольких недель, но продолжаю сталкиваться с: "Обязательное свойство идентификатора не найдено для класса" или "После сохранения идентификатор не должен быть нулевым".
Вот пример класса модели, который я использую:
import javax.persistence.*;
@Entity
@Table(name = "pojo")
public class Pojo {
@Id
@Column(name = "id_one")
private int idOne;
@Column(name = "bool_example")
private boolean boolExample;
public Pojo(){};
public Pojo(int idOne, boolean boolExample){
this.idOne = idOne;
this.boolExample = boolExample;
}
public int getIdOne() {
return idOne;
}
public void setIdOne(int idOne) {
this.idOne = idOne;
}
public boolean isBoolExample() {
return boolExample;
}
public void setBoolExample(boolean boolExample) {
this.boolExample = boolExample;
}
}
Вот пример запроса, по которому я звоню
@GetMapping(value = "/plswork")
public String pojotestone(){
Pojo newpojo = new Pojo(1, false);
pojoService.saveThis(newpojo);
pojoService.test();
return "yes";
}
PojoService вызывает pojoRepository.save (объект T). Этот pojoRepository от расширения CrudRepository, поэтому он создает запросы на лету