StringIndexOutOfBoundsException

Hibernate 執行query.list()方法時出現以下錯誤:java

StringIndexOutOfBoundsException: String index out of range: 0sql

java.lang.StringIndexOutOfBoundsException: String index out of range: 0
	at java.lang.String.charAt(String.java:658)
	at org.hibernate.type.descriptor.java.CharacterTypeDescriptor.wrap(CharacterTypeDescriptor.java:78)
	at org.hibernate.type.descriptor.java.CharacterTypeDescriptor.wrap(CharacterTypeDescriptor.java:33)
	at org.hibernate.type.descriptor.sql.VarcharTypeDescriptor$2.doExtract(VarcharTypeDescriptor.java:73)
	at org.hibernate.type.descriptor.sql.BasicExtractor.extract(BasicExtractor.java:64)
	at org.hibernate.type.AbstractStandardBasicType.nullSafeGet(AbstractStandardBasicType.java:267)
	at org.hibernate.type.AbstractStandardBasicType.nullSafeGet(AbstractStandardBasicType.java:263)
	at org.hibernate.type.AbstractStandardBasicType.nullSafeGet(AbstractStandardBasicType.java:253)
	at org.hibernate.type.AbstractStandardBasicType.hydrate(AbstractStandardBasicType.java:338)
	at org.hibernate.persister.entity.AbstractEntityPersister.hydrate(AbstractEntityPersister.java:2969)
	at org.hibernate.loader.Loader.loadFromResultSet(Loader.java:1696)
	at org.hibernate.loader.Loader.instanceNotYetLoaded(Loader.java:1628)
	at org.hibernate.loader.Loader.getRow(Loader.java:1515)
	at org.hibernate.loader.Loader.getRowFromResultSet(Loader.java:726)
	at org.hibernate.loader.Loader.processResultSet(Loader.java:953)
	at org.hibernate.loader.Loader.doQuery(Loader.java:921)
	at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:355)
	at org.hibernate.loader.Loader.doList(Loader.java:2554)
	at org.hibernate.loader.Loader.doList(Loader.java:2540)
	at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2370)
	at org.hibernate.loader.Loader.list(Loader.java:2365)
	at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:497)
	at org.hibernate.hql.internal.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:387)
	at org.hibernate.engine.query.spi.HQLQueryPlan.performList(HQLQueryPlan.java:236)
	at org.hibernate.internal.SessionImpl.list(SessionImpl.java:1300)
	at org.hibernate.internal.QueryImpl.list(QueryImpl.java:103)

此錯誤由數據表字段爲char類型時,字段沒有值(爲null)會出現該錯誤。hibernate

我的理解:Hibernate執行查詢所有數據的時候,數據表字段是char,而且這個是null或空白。查詢的時候把他當作了字符串,而後charat(0)操做,因此出現這個錯誤。歡迎你們指點。謝謝code

相關文章
相關標籤/搜索