`

JDBC 设置查询超时()

阅读更多

          最近项目中写了个提数的的系统,该系统架构类似Hadoop里面的namenode和tasknode工作方式,客户端好像是tasknode,服务端namenode,是通过http通讯。

        

          客户端从服务端领取提数任务时候,每个任务都启动下单独的客户端(jar包)去执行,提取数据生成cvs或者txt的文档,发送到网盘中,然后客户端执行完成退出。

 

        mysql和oracle通过JDBC方式去查询,hive是通过调用hive的CLI去查询。

     

        因为提数需要执行很长时间,所以需要对JDBC的查询超时进行设计,通过API查询是通过Statement类的setQueryTimeout方法设置超时时间,在设置的时候发现个的问题,比如说stat.setQueryTimeout(1);查询的数据的执行时间已经大于1s,但是并没有抛异常,而是进程一直等待,使用的jdbc驱动是使用mysql-connector-java-5.1.5,后来把jar的换成5.1.24就抛异常,看来是jar版本的问题,后来去上mysql的bug列表也找到这个问题的描述,和我遇见的问题一样,http://bugs.mysql.com/bug.php?id=31698  ,问题虽然不是很严重,写出来省的大家再走弯路。

 

 

 

 

分享到:
评论
1 楼 zong.jianhui06 2013-07-23  
数据订阅(提数任务)是采用类似Hadoop里面的namenode和tasknode工作方式,客户端去根据配置的任务去提取数据,然后通过网盘分享给业务部门。

数据开发平台是通过dubbo方式,数据开发平台主要是给Hive提供图形化编写SQL的工具,将编写好的SQL在数据开发平台上运行,也可以生成数据订阅任务。

相关推荐

    揭秘JDBC超时机制完整版

    当网络出现问题时,如未设置socket timeout,JDBC连接可能会被长时间阻塞,类似于HttpClient未设置超时的情况。因此,设置合理的socket timeout至关重要,以防止CPU资源过度消耗和应用失去响应。 在应用与数据库间...

    jdbc连接db2

    1. **JDBC**:Java Database Connectivity 是 Java 语言中用来规范客户端程序如何来访问数据库的应用程序接口,提供了诸如查询和更新数据库中数据的方法。 2. **DB2**:IBM DB2 是 IBM 公司开发的一款关系型数据库...

    JDBC连接SQL Server例子

    **JDBC连接SQL Server例子详解** Java JDBC (Java Database Connectivity) 是Java平台中用于与数据库交互的一组标准API,它允许Java程序通过JDBC驱动程序与各种类型的数据库进行通信。在本例中,我们将深入探讨如何...

    JDBC4连接Impala的jar

    7. **配置优化**:根据应用需求,可以调整连接池大小、超时设置、缓冲区大小等,以优化性能。 在标签中提到的`hive`和`hadoop`,意味着Impala可以与Hive Metastore进行交互,共享元数据,使得在Impala和Hive之间...

    java超时控制

    JDBC的`Statement`对象有一个`setQueryTimeout()`方法,可以设定SQL查询的超时时间。当查询超过这个时间,JDBC驱动会抛出`SQLException`。 7. **FutureTask超时** `FutureTask`类也支持超时控制,通过`FutureTask...

    polardb-jdbc18.zip

    PolarDB-JDBC18支持动态配置数据库连接参数,如自动重连、超时设置等,适应各种复杂的网络环境。 2.4 安全性 通过SSL加密传输,保证了数据在传输过程中的安全性,防止数据被窃取或篡改。 三、使用PolarDB-JDBC18 ...

    Mysql JDBC驱动 .zip_MYSQL_jdbc mysql_mysql jdbc_mysql jdbc driver_

    此外,根据应用需求,可能需要进行性能优化,如设置合适的连接超时、查询缓存等配置。 综上所述,MySQL JDBC驱动是Java开发者与MySQL数据库通信的重要桥梁,通过它,我们可以方便地执行SQL语句,进行数据操作。了解...

    sqljdbc和sqljdbc4

    还可以调整连接池大小、超时设置等以适应不同的负载需求。 总之,SQLJDBC和SQLJDBC4为Java开发者提供了方便、高效的工具,使他们能够在JSP等环境中无缝地连接和操作SQL Server数据库。通过理解其特性和最佳实践,...

    使用jdbc动态连接数据库

    - `setLoginTimeout(int seconds)`:设置登录超时时间。 ##### 2. Connection `Connection`接口表示一个到数据库的实际连接,所有针对数据库的操作都是基于这个连接进行的。`Connection`的一些常用方法包括: - `...

    jdbc jar包

    - 适当设置连接、读取超时,防止程序无响应。 总结,JDBC Jar包是Java开发与数据库交互的基础,通过其提供的API,我们可以轻松地实现对各种数据库的操作。熟练掌握JDBC技术,对于Java后端开发来说至关重要。

    尚硅谷jdbc视频教程

    1. **连接超时**:检查网络连接是否正常,同时调整连接超时时间。 2. **SQL语法错误**:仔细检查SQL语句,确保没有语法错误。 3. **驱动版本不兼容**:确认使用的JDBC驱动版本与数据库服务器版本相匹配。 4. **性能...

    greenplum_jdbc_5.1.4.zip

    - 连接超时:检查网络状况,或者调整数据库的连接超时设置。 - SQL语法错误:遵循Greenplum的SQL语法规范,避免使用不支持的特性。 - 性能瓶颈:分析查询计划,优化SQL语句,或调整数据库参数。 总结,Greenplum...

    sqljdbc4 (SQL连接驱动包)

    11. **性能优化**:通过配置JDBC连接参数,如超时设置、连接池大小、批处理大小等,可以进一步优化`sqljdbc4`的性能。 总之,`sqljdbc4`作为微软提供的JDBC驱动,为Java开发者提供了便捷、高效的方式来访问和操作...

    MySQL JDBC配置参数

    设置合理的超时时间可以避免因验证查询过长而导致的问题。 综上所述,这些MySQL JDBC配置参数对于优化数据库连接管理和提高应用程序性能至关重要。开发者应根据实际应用场景和系统负载情况合理调整这些参数的值,以...

    jdbc线程池演示demo

    2. 配置C3P0:创建一个配置文件(如c3p0-config.xml),配置数据库连接的相关参数,如最大连接数、最小连接数、初始连接数、获取连接超时时间等。 ```xml <class-name>...

    Impala的JDBC编程驱动

    6. **性能优化**:通过设置连接参数,如超时、缓冲大小等,优化查询性能。 总的来说,Impala的JDBC编程驱动为Java开发者提供了一种标准且高效的方式,与Impala进行数据交互,广泛应用于数据分析、ETL流程、Web应用...

    sqljdbc4.0-4.2.zip

    8. 配置参数:SQLJDBC驱动支持多种配置参数,例如连接超时、查询超时、自动提交等,可以通过设置`Properties`对象并传递给`DriverManager.getConnection()`方法来配置。 9. 安全性:使用最新的SQLJDBC版本可以确保...

    jdbc sqlserver2014

    5. **事务管理**:JDBC支持事务控制,包括提交(`Connection.commit()`)、回滚(`Connection.rollback()`)和设置隔离级别。 6. **批处理**:通过`Statement`的`addBatch()`和`executeBatch()`方法,可以批量执行多条...

    JDBC +MSSQL驱动

    - 设置合适的超时、连接和读取缓冲大小,优化性能。 总结,JDBC MSSQL驱动使得Java应用能够高效、安全地与Microsoft SQL Server进行通信。理解并熟练运用JDBC API,以及正确配置和管理数据库连接,是开发任何Java...

    oracle所有版本jdbc的jar包

    - 调整JDBC参数如超时、连接池大小等,以适应不同环境需求。 6. **安全注意事项**: - 不要在代码中硬编码数据库凭证,而是使用环境变量或安全存储机制。 - 定期更新JDBC驱动以获取最新的安全补丁和功能增强。 ...

Global site tag (gtag.js) - Google Analytics