java - 加载 jdbc 驱动程序类时出现随机行为 - 未找到合适的驱动程序

标签 java database jdbc sybase dbconnection

我知道这是一个非常常见的问题,我们在 Stackoverflow 上也有类似的帖子。

但是我以非常随机的顺序面临同样的问题。我不知道如何解决它。 尝试了该网站的所有解决方案,但没有成功

这是我的代码

 private static Connection conn = null;
 private static String connDriverClass;
 private static String  connDbUrl;
 private static String  connDbUser;
 private static String  connDbPassword;

 private static Connection getConnection() throws  SQLException, ClassNotFoundException {
    connDriverClass = "com.sybase.jdbc3.jdbc.SybDriver";
    connDbUrl="jdbc:sybase:Tds:some.com:5000/db";
    connDbUser="user";
    connDbPassword="pass";

    if(conn !=null && !conn .isClosed()) { return conn ; }

    try {
        Class.forName(connDriverClass);
        viTechConn = DriverManager.getConnection(connDbUrl, connDbUser, connDbPassword);
    } catch (SQLException | ClassNotFoundException e) {
        LOG.error("Error in getting DB Connection "+e.getMessage());
        throw e;
    }
    return conn;
}

我们在并行进程中运行它。

有时工作正常,有时会出错

java.sql.SQLException: No suitable driver found for jdbc:sybase:Tds:some.com:5000/db

请告诉我如何克服这种随机行为。

谢谢。

最佳答案

您可以考虑使用池数据源。这是一次性的工作,并且将在将来节省大量的调试工作。

请参阅以下类文件实现,了解如何创建和访问池数据源。

http://www.programcreek.com/java-api-examples/index.php?source_dir=jasperserver-master/5.5/com/jaspersoft/jasperserver/api/engine/jasperreports/service/impl/JdbcReportDataSourceServiceFactory.java

关于java - 加载 jdbc 驱动程序类时出现随机行为 - 未找到合适的驱动程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36315223/

相关文章:

java - Apache Derby 为我创建的具有有意义名称的索引提供了奇怪的名称

java - 从 oracle 检索时时间戳值修剪

java - 如何在jdbcTemplate中获取带有替换通配符的完整sql脚本?

java - 如何在不编写自己的解析器的情况下获取 SPARUL INSERT Data 语句中包含的所有三元组?

mysql - 从 3 个表中进行 SQL SELECT

database - 在 Django 中插入多对多对象的正确方法?

mysql - 通过数据库更改 Magento bundle 产品价格类型

java - 如何使用 JDBC 连接 XAMPP MySQL 本地数据库?

java - 安卓/Java : Annual countodwn with having to update it constantly

Java-Stream 和 Optional - 查找与流元素匹配的值或提供默认值