代码之家  ›  专栏  ›  技术社区  ›  Grzenio

如何在spring DriverManager数据源上设置超时

  •  4
  • Grzenio  · 技术社区  · 15 年前

    我们正在使用 DriverManagerDataSource

    3 回复  |  直到 15 年前
        1
  •  5
  •   Grzenio    15 年前

    我最终以以下方式更改了Spring上下文中的bean:

    <bean id="myDataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource" autowire="no">
        <property name="url" value="${jdbc.url}"/>
        <property name="username" value="${jdbc.username}"/>
        <property name="password" value="${jdbc.password}"/>
        <property name="connectionProperties">
            <props>
                <prop key="oracle.net.READ_TIMEOUT">60000</prop>
            </props>
        </property>
    </bean>
    

    我不知道它是否有效。

        2
  •  1
  •   gpeche    15 年前

    oracle.jdbc.pool.OracleDataSource . 我建议你直接用。oraclejdbc(10gR2,其他版本将类似)的参考资料在中 http://download.oracle.com/docs/cd/B19306_01/java.102/b14355/toc.htm . 兴趣点:

        3
  •  0
  •   Jon Freedman    15 年前

    如果您的Oracle驱动程序实现支持timeout属性,则可以通过 getConnectionProperties().put(key, timeout)

    我想你已经意识到了 DriverManagerDataSource

    池连接。 它只是作为 完全成熟的简单替代品 连接池,实现相同的 标准接口,但创建新的 每次通话都有联系。[…]如果你 Apache's Jakarta Commons DBCP C3P0 .

    你也可能对 OCI Connection Pooling