有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java c3p0连接池保存或使用blob数据更新

我们面临c3p0连接池的问题。如果 在不保存blob数据的情况下保存,将blob添加到对象,然后会话保存方法失败。即使它不是异常处理程序,它也直接将最终阻塞 Where会话。flush引发断言异常,因为新id未分配给对象

这是任何人都面临的问题。这是配置的问题吗

休眠配置

组织。冬眠地方话MySQL5方言

<prop key="hibernate.show_sql">false</prop>
<prop key="hibernate.connection.SetBigStringTryClob">true</prop>
<prop key="hibernate.jdbc.batch_size">100</prop>  
<prop key="hibernate.cache.use_query_cache">true</prop>
<prop key="hibernate.generate_statistics">false</prop>
<prop key="org.hibernate.cache.ehcache.configurationResourceName">ehcache.xml</prop>
<prop key="hibernate.max_fetch_depth">4</prop>
<prop key="hibernate.cache.use_second_level_cache">true</prop>
<prop key="hibernate.cache.region.factory_class">org.hibernate.cache.ehcache.SingletonEhCacheRegionFactory</prop>


<prop key="hibernate.c3p0.min_size">10</prop>
<prop key="hibernate.c3p0.max_size">200</prop>
<prop key="hibernate.c3p0.acquire_increment">1</prop>
<prop key="hibernate.c3p0.timeout">1800</prop>
<prop key="hibernate.c3p0.max_statements">100</prop>
<prop key="hibernate.c3p0.idle_test_period">3000</prop>
<prop key="hibernate.c3p0.validationQuery">SELECT 1</prop>
<prop key="hibernate.connection.release_mode">after_transaction</prop>

<prop key="hibernate.id.new_generator_mappings">false</prop>
<prop key="hibernate.search.default.directory_provider">filesystem</prop> 
<prop key="hibernate.search.default.indexBase" >/var/lucene/indexes</prop>

谢谢 莫辛


共 (1) 个答案

  1. # 1 楼答案

    捕获可丢弃对象并打印堆栈跟踪

    catch( Throwable e){ e.printStackTrace(); }

    得到

    爪哇。lang.AbstractMethodError:方法com/mchange/v2/c3p0/impl/NewProxyPreparedStatement。setBinaryStream(ILjava/io/InputStream;J)V是抽象的 在com。麦克亨格。v2。c3p0。impl。NewProxyPreparedStatement。setBinaryStream(NewProxyPreparedStatement.java) 在org。冬眠类型描述符。sql。BlobTypeDescriptor$5$1。doBind(BlobTypeDescriptor.java:130) 在org。冬眠类型描述符。sql。BlobTypeDescriptor$2$1。doBind(BlobTypeDescriptor.java:86) 在org。冬眠类型描述符。sql。巴斯宾德。绑定(BasicBinder.java:73)

    似乎C3P0JAR文件使用的是旧的、下载的更新版本0.0.95.2版本,它工作正常

    谢谢