2014-01-21 2 views
1

Я не могу найти какой-либо документ о том, как использовать аннотацию GeneratedValue, когда дело доходит до инициализации моего объекта.@GeneratedValue Аннотации, значение конструктора

вот мой идентификатор поле для моего класса объекта, я две других полей, которые я оставил из

@Id 
@GeneratedValue(strategy = GenerationType.IDENTITY) 
@Basic(optional = false) 
@NotNull 
@Column(name = "ID") 
private BigDecimal id; 

моих конструкторы

public Pothole() { 
} 

public Pothole(BigDecimal id) { 
    this.id = id; 
} 

public Pothole(BigDecimal id, byte[] image, Date pdate) { 
    this.id = id; 
    this.image = image; 
    this.pdate = pdate; 
} 

Что я использую для моего поля ид ?? Я оставляю его пустым

Pothole entity = new Pothole(???,decodedBytes, date); 

ответ

0

Да, вы должны оставить его пустым и когда Hibernate будет сохраняться объект в базе данных Есть (т.е. выполнить insert заявление), то id данного лица будет оцениваться по базе данных (в вашем случае столбец id предоставит значение). Атрибут «d» останется пустым, пока объект не будет сохранен.

0

используя конструктор по умолчанию работал

Pothole entity = new Pothole(); 
    entity.setImage(decodedBytes); 
    entity.setPdate(date); 
Смежные вопросы