`

转载一篇讲解JDBC超时相关的文章

    博客分类:
  • JDBC
 
阅读更多

通过在数据所在的服务器上执行ipconfig /release,如果此时客户端刚好在执行查询操作,并且操作系统没有设置socket超时,则应用会卡死。发现这篇文章讲解的挺不错:深入理解JDBC的超时设置

关键点:

1、如下图,描述了一种依赖关系

 

2、三种数据库的驱动配置

DBC Driver connectTimeout配置项 socketTimeout配置项 url格式 示例
MySQL Driver connectTimeout(默认值:0,单位:ms) socketTimeout(默认值:0,单位:ms) jdbc:mysql://[host:port],[host:port]…/[database][?propertyName1][=propertyValue1][&propertyName2][=propertyValue2]… jdbc:mysql://xxx.xx.xxx.xxx:3306/database?connectTimeout=60000&socketTimeout=60000
MS-SQL DriverjTDS Driver loginTimeout(默认值:0,单位:s) socketTimeout(默认值:0,单位:s) jdbc:jtds:<server_type>://<server>[:<port>][/<database>][;<property>=<value>[;...]] jdbc:jtds:sqlserver://server:port/database;loginTimeout=60;socketTimeout=60
Oracle Thin Driver oracle.net.CONNECT_TIMEOUT (默认值:0,单位:ms) oracle.jdbc.ReadTimeout(默认值:0,单位:ms) 不支持通过url配置,只能通过OracleDatasource.setConnectionProperties() API设置,使用DBCP时可以调用BasicDatasource.setConnectionProperties()或BasicDatasource.addConnectionProperties()进行设置  
CUBRID Thin Driver 无独立配置项(默认值:5,000,单位:ms) 无独立配置项(默认值:5,000,单位:ms)

  • 大小: 61.1 KB
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics