Java DriverManager 不加载 Mysql 驱动程序
Java DriverManager does not load Mysql driver
Java DriverManager 不加载 Mysql 驱动程序
DriverManager
static {
loadInitialDrivers();
println("JDBC DriverManager initialized");
}
Mysql jdbc 驱动程序在 Tomcat 库下。
tomcat/lib/mysql-jdbc.jar
从调试器调用DriverManager.getDriver(URL)之前,断点是
在方法 loadInitialDrivers() 中设置,但执行不会在那里停止。是静态方法,当加载class时调用静态方法?
加载的驱动程序列表(registeredDrivers
)为空。
更新
将ojdbc6.jar添加到tomcat/lib,然后重新启动tomcat。 DriverManager 没有
加载驱动程序。可能是什么问题? tomcat 似乎忽略了 tomcat/lib 目录下的所有 JDBC jar。
也尝试过:将 jdbc 驱动程序复制到 webapps/myapp/WEB-INF/lib,但没有帮助。
来自简单 Java 应用程序的 运行 SQL 与 Tomcat 等 JEE 服务器的 运行ning SQL 完全不同(好吧...至少是半个 JEE 服务器)。
不要使用 static
初始值设定项。相反,JEE(Java 企业版)的做法有所不同,原因有很多:
在 Tomcat 中您不需要 "load" 驱动程序。只需将其放入 TOMCAT_HOME/lib
并重新启动 Tomcat。而已。驱动程序已经加载。在启动时查看 Tomcat 日志,您会看到它。 Tomcat(就像任何 JEE 服务器所做的那样)负责加载它。
然后,您需要做的是创建一个 JDBC 数据源。有很多关于如何做到这一点的例子。您可以通过修改 conf/server.xml 文件并重新启动 Tomcat 来完成此操作。确保给数据源起一个你记得的名字;您将在下一步中使用它。启动时再次查看 Tomcat 的日志文件,您会看到全新的数据源是 registered/created.
接下来,在您的 JEE 代码中,您使用在上一步中配置的名称从 JNDI 目录中检索数据源,并使用它创建一个 Connection
。同样,有很多关于如何执行此操作的示例。
最后,使用 Connection
你可以 运行 所有你想要的 SQL 语句。这是您已经熟知的部分。像往常一样做。
Java DriverManager 不加载 Mysql 驱动程序
DriverManager
static {
loadInitialDrivers();
println("JDBC DriverManager initialized");
}
Mysql jdbc 驱动程序在 Tomcat 库下。
tomcat/lib/mysql-jdbc.jar
从调试器调用DriverManager.getDriver(URL)之前,断点是 在方法 loadInitialDrivers() 中设置,但执行不会在那里停止。是静态方法,当加载class时调用静态方法?
加载的驱动程序列表(registeredDrivers
)为空。
更新
将ojdbc6.jar添加到tomcat/lib,然后重新启动tomcat。 DriverManager 没有 加载驱动程序。可能是什么问题? tomcat 似乎忽略了 tomcat/lib 目录下的所有 JDBC jar。
也尝试过:将 jdbc 驱动程序复制到 webapps/myapp/WEB-INF/lib,但没有帮助。
运行 SQL 与 Tomcat 等 JEE 服务器的 运行ning SQL 完全不同(好吧...至少是半个 JEE 服务器)。
不要使用 static
初始值设定项。相反,JEE(Java 企业版)的做法有所不同,原因有很多:
在 Tomcat 中您不需要 "load" 驱动程序。只需将其放入
TOMCAT_HOME/lib
并重新启动 Tomcat。而已。驱动程序已经加载。在启动时查看 Tomcat 日志,您会看到它。 Tomcat(就像任何 JEE 服务器所做的那样)负责加载它。然后,您需要做的是创建一个 JDBC 数据源。有很多关于如何做到这一点的例子。您可以通过修改 conf/server.xml 文件并重新启动 Tomcat 来完成此操作。确保给数据源起一个你记得的名字;您将在下一步中使用它。启动时再次查看 Tomcat 的日志文件,您会看到全新的数据源是 registered/created.
接下来,在您的 JEE 代码中,您使用在上一步中配置的名称从 JNDI 目录中检索数据源,并使用它创建一个
Connection
。同样,有很多关于如何执行此操作的示例。最后,使用
Connection
你可以 运行 所有你想要的 SQL 语句。这是您已经熟知的部分。像往常一样做。