hibernate+c3p0连接池,插入数据程序运行一会就卡住

程序是一个导入Excel数据的工具,excel中有好几千条数据,但是程序运行一会,每次都是导入24条以后程序就不运行了,程序好像处于挂起状态一样,卡住了,控制台上也不再打印hibernate日志信息,不知道什么原因,有没有会的看一下,谢谢!

 

 

 

hibernate.cfg.xml配置如下:

<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE hibernate-configuration PUBLIC
        "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
        "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">

<hibernate-configuration>
    <session-factory>

        <!-- Database connection settings -->
        <property name="connection.driver_class">oracle.jdbc.driver.OracleDriver</property>
        <property name="connection.url">jdbc:oracle:thin:@127.0.0.1:1521:orcl</property>
        <property name="connection.username">bps</property>
        <property name="connection.password">bps</property>

        <!-- SQL dialect -->
        <property name="dialect">org.hibernate.dialect.OracleDialect</property>

        <!-- Echo all executed SQL to stdout -->
        <property name="show_sql">true</property>

        <!-- Disable the second-level cache -->
        <property name="cache.provider_class">org.hibernate.cache.NoCacheProvider</property>

        <!-- C3P0连接池设定 -->
        <property name="hibernate.connection.provider_class">org.hibernate.service.jdbc.connections.internal.C3P0ConnectionProvider</property>
        <property name="hibernate.c3p0.max_size">100</property>
        <property name="hibernate.c3p0.min_size">30</property>
        <property name="hibernate.c3p0.timeout">5000</property>
        <property name="hibernate.c3p0.max_statements">100</property>
        <property name="hibernate.c3p0.idle_test_period">3000</property>
        <property name="hibernate.c3p0.acquire_increment">2</property>
        <property name="hibernate.c3p0.validate">false</property>

        <!-- 映射文件 -->
        ...
    </session-factory>
</hibernate-configuration>

 

 

xydzfx
xydzfx 想请问解决没有,我遇到和你一样的问题,插入到一半,不确定多少条的时候就不动了,日志什么的都不动,又没有抛异常,能不能给我说下你的解决方法?xydzfx@163.com,谢谢
5 年多之前 回复

3个回答

[code="java"]
应该和c3p0没有关系的吧

应该还是你的导入程序的问题, 之前做导入数据的时候
也碰到类似的问题的

当时导入数据是丢到callable里面执行的
如果是这样线程里面错误, 是不提示错误日志也不打印的
像程序停下来似的的

你可以打断点执行看看是哪里错误
[/code]

leehuat
leehuat 嗯, 最好把这些东西交给spring管理比较方便
接近 6 年之前 回复
Java__chuchu
Clown_悠哈 弄好了,查询的方法里创建的session没有关闭,关闭以后就好了
接近 6 年之前 回复
Java__chuchu
Clown_悠哈 行,谢谢,我打断点试试先
接近 6 年之前 回复

1.是不是连接失效?
[code="xml"]true [/xml]
2.是不是没有提供事务支持,而导致连接数过多,造成假死现象

Java__chuchu
Clown_悠哈 谢谢关注,已经弄好了,是因为查询的方法里创建的session没有关闭
接近 6 年之前 回复

把相关的业务代码全部放出来。

Java__chuchu
Clown_悠哈 谢谢关注,已经弄好了,是因为查询的方法里创建的session没有关闭
接近 6 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问