Problem Description: Null value is assigned to a property of primitive type setter, hibernate int data cannot read hiberante read int integer data error hiberante read Database error
Error log:
Exception in thread "main" Org.hibernate.PropertyAccessException:Null value is assigned to a property of primitive type Setter of Com.zsba.AdornCompanyInfo.provinceOrderMember
At Org.hibernate.property.basicpropertyaccessor$basicsetter.set (basicpropertyaccessor.java:85)
At Org.hibernate.tuple.entity.AbstractEntityTuplizer.setPropertyValues (abstractentitytuplizer.java:337)
At Org.hibernate.tuple.entity.PojoEntityTuplizer.setPropertyValues (pojoentitytuplizer.java:200)
At Org.hibernate.persister.entity.AbstractEntityPersister.setPropertyValues (abstractentitypersister.java:3560)
At Org.hibernate.engine.TwoPhaseLoad.initializeEntity (twophaseload.java:129)
At Org.hibernate.loader.Loader.initializeEntitiesAndCollections (loader.java:842)
At Org.hibernate.loader.Loader.doQuery (loader.java:717)
At Org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections (loader.java:224)
At Org.hibernate.loader.Loader.loadEntity (loader.java:1851)
At Org.hibernate.loader.entity.AbstractEntityLoader.load (abstractentityloader.java:48)
At Org.hibernate.loader.entity.AbstractEntityLoader.load (abstractentityloader.java:42)
At Org.hibernate.persister.entity.AbstractEntityPersister.load (abstractentitypersister.java:3038)
At Org.hibernate.event.def.DefaultLoadEventListener.loadFromDatasource (defaultloadeventlistener.java:395)
At Org.hibernate.event.def.DefaultLoadEventListener.doLoad (defaultloadeventlistener.java:375)
At Org.hibernate.event.def.DefaultLoadEventListener.load (defaultloadeventlistener.java:139)
At Org.hibernate.event.def.DefaultLoadEventListener.proxyOrLoad (defaultloadeventlistener.java:195)
At Org.hibernate.event.def.DefaultLoadEventListener.onLoad (defaultloadeventlistener.java:103)
At Org.hibernate.impl.SessionImpl.fireLoad (sessionimpl.java:878)
At Org.hibernate.impl.SessionImpl.get (sessionimpl.java:815)
At Org.hibernate.impl.SessionImpl.get (sessionimpl.java:808)
At Sun.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
At Sun.reflect.NativeMethodAccessorImpl.invoke (nativemethodaccessorimpl.java:39)
At Sun.reflect.DelegatingMethodAccessorImpl.invoke (delegatingmethodaccessorimpl.java:25)
At Java.lang.reflect.Method.invoke (method.java:597)
At Org.hibernate.context.threadlocalsessioncontext$transactionprotectionwrapper.invoke ( threadlocalsessioncontext.java:301)
At $Proxy 0.get (Unknown Source)
At Com.zsba.HibernateUtil.main (hibernateutil.java:60)
caused by:java.lang.IllegalArgumentException
At Sun.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
At Sun.reflect.NativeMethodAccessorImpl.invoke (nativemethodaccessorimpl.java:39)
At Sun.reflect.DelegatingMethodAccessorImpl.invoke (delegatingmethodaccessorimpl.java:25)
At Java.lang.reflect.Method.invoke (method.java:597)
At Org.hibernate.property.basicpropertyaccessor$basicsetter.set (basicpropertyaccessor.java:42)
... More
Workaround:
Javabean.hbm.xml
<property name= "Provinceordermember" type= "int" >
<column name= "Provinceordermember" >
<comment></comment>
</column>
</property>
type= "int" to Type= "Java.lang.Integer"
JavaBean
private int provinceordermember; Change to private Intege Provinceordermember
Cause: The database field value of Null,int type cannot be assigned to NULL, only 0, but in some practical applications, such as a student score, 0 for 0, or NULL, it means that no fractional data field is either null or integer.
Original address: http://blog.csdn.net/ydcun/article/details/7584153