在action請求資料的過程中報出"Null value was assigned to a property of primitive type setter of"錯誤,搜尋之後發現是因為資料庫裡相應的字段為NULL。
例如:
Java代碼
<!--Hibernate映射檔案中的字段-->
<property name="printTime" type="long"><column name="print_time"/></property>
<!--Hibernate映射檔案中的字段-->
<property name="printTime" type="long"><column name="print_time"/></property>
其中的類型為hibernate類型,在生成的類中,printTime字段為long類型,為基本類型,不能為NULL.
解決方法:
第一種:資料庫字段不設定為空;
第二種:手動修改映射檔案,printTime使用Java類型Long,即type="java.lang.Long",Book類中的字段也要改為Long。同理,int為Integer.
第三種:在反向工程時使用Java類型,而不是hibernate類型。