當我調用Session.persist傳遞一個帶有多個問號的String屬性的實體對象時,我得到如下所示的異常。Session.persist期間的Hibernate異常當String字段包含問號時
由於hibernate在準備好的語句中使用問號作爲值佔位符,因此會出現異常。
有人會知道這個問題的解決辦法嗎?
這裏的觸發異常的對象的字符串表示:
WcmsPart [MPN = 04EAC2 ??? 16-001,CPN = NULL,描述= PRIMER 聚氨酯漆,數量= 1,...]
並且在下面的例外。感謝您的建議
Exception: org.hibernate.exception.ConstraintViolationException: could not execute statement
Stack Trace:
org.hibernate.exception.internal.SQLStateConversionDelegate.convert(SQLStateConversionDelegate.java:129)
org.hibernate.exception.internal.StandardSQLExceptionConverter.convert(StandardSQLExceptionConverter.java:49)
org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:126)
org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:112)
org.hibernate.engine.jdbc.internal.ResultSetReturnImpl.executeUpdate(ResultSetReturnImpl.java:211)
org.hibernate.engine.jdbc.batch.internal.NonBatchingBatch.addToBatch(NonBatchingBatch.java:62)
org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3124)
org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3581)
org.hibernate.action.internal.EntityInsertAction.execute(EntityInsertAction.java:104)
org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:465)
org.hibernate.engine.spi.ActionQueue.executeInserts(ActionQueue.java:337)
org.hibernate.engine.spi.ActionQueue.addInsertAction(ActionQueue.java:176)
org.hibernate.engine.spi.ActionQueue.addAction(ActionQueue.java:216)
org.hibernate.event.internal.AbstractSaveEventListener.addInsertAction(AbstractSaveEventListener.java:334)
org.hibernate.event.internal.AbstractSaveEventListener.performSaveOrReplicate(AbstractSaveEventListener.java:289)
org.hibernate.event.internal.AbstractSaveEventListener.performSave(AbstractSaveEventListener.java:195)
org.hibernate.event.internal.AbstractSaveEventListener.saveWithGeneratedId(AbstractSaveEventListener.java:126)
org.hibernate.event.internal.DefaultPersistEventListener.entityIsTransient(DefaultPersistEventListener.java:206)
org.hibernate.event.internal.DefaultPersistEventListener.onPersist(DefaultPersistEventListener.java:149)
org.hibernate.event.internal.DefaultPersistEventListener.onPersist(DefaultPersistEventListener.java:75)
org.hibernate.internal.SessionImpl.firePersist(SessionImpl.java:811)
org.hibernate.internal.SessionImpl.persist(SessionImpl.java:784)
org.hibernate.internal.SessionImpl.persist(SessionImpl.java:789)
請隨附查詢,您正在調用..所有參數設置 –
我簡單地調用'session.persist(wcmsPart);' –