我有一个hibernate映射,该映射一直工作到最近-尽管我确定这是我所做的某些更改的结果,但我似乎找不到它。
映射文件将字段定义为:
<id name="id" column="id"> <generator class="native" /> </id>
该类将该字段定义为:
private Long id; public Long getId() { return id; } public void setId(Long id) { this.id = id; }
运行此代码时,出现以下错误:
org.hibernate.PropertyAccessException: IllegalArgumentException occurred while calling setter of MyClass.id
与此对应的数据库字段定义为:
`id` bigint(20) NOT NULL AUTO_INCREMENT PRIMARY KEY
我还有其他几个具有相似结构和定义的类,并且它们没有问题。但是,可能由于我最近所做的一些更改而导致,此特定映射将不再正常工作。
有什么建议么?
我不确定,但是您可以尝试以下方法:
<id name="id" type="java.lang.Long"> <column name="id" /> <generator class="native" /> </id>
Hibernate可能设置了错误的值。