我想玩一個非常簡單的類的JPA!框架,並與id列有一些問題。問題與ID列和JPA
我的SQL數據庫只有兩列:
CREATE TABLE IF NOT EXISTS `auto` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(255) DEFAULT NULL,
PRIMARY KEY (`id`)
)
我的模式是:
@Entity
@Table(name = "auto")
public class Auto extends Model{
@Column(insertable = false, updatable = false)
public int id;
public String name;
public Auto(String name){
this.name = name;
}
}
一切正常,沒有這部分:
@Column(insertable = false, updatable = false)
public int id;
只要我添加public int id;
雖然我會得到這個錯誤:A JPA error occurred (Unable to build EntityManagerFactory): Repeated column in mapping for entity: models.Auto column: id (should be mapped with insert="false" update="false")
這就是我已經添加了註解欄的原因,但它不會與工作沒有,現在我越來越:
A javax.persistence.PersistenceException has been caught, org.hibernate.PropertyAccessException: could not set a field value by reflection setter of models.Auto.id
我這種方式測試模型:new Auto("bmw").save();
save()是playframework中模型類的一個方法。
任何人都知道我爲什麼遇到這個問題?謝謝!
使用Spring Data JPA並從AbstractPersistable擴展實體時出現同樣的問題@kindofwhat:Thx將我指向正確的方向! – Sal 2012-07-24 00:20:47