天天看點

Null value was assigned to a property of primitive type setter of"原因及解決方

在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類型。