java – 是否需要Class.forName()机制?

参见英文答案 > Class.forName(JDBC_DRIVER) no longer needed?                                    2个

Class.forName(dbDriver); // "org.postgres.Driver" or "com.mysql.jdbc.Driver"




从JDBC 4.0开始不需要Class.forName().

这是Java Tutorials on JDBC的摘录.

In previous versions of JDBC, to obtain a connection, you first had to
initialize your JDBC driver by calling the method Class.forName. This
methods required an object of type java.sql.Driver. Each JDBC driver
contains one or more classes that implements the interface
java.sql.Driver. The drivers for Java DB are
org.apache.derby.jdbc.EmbeddedDriver and
org.apache.derby.jdbc.ClientDriver, and the one for MySQL Connector/J
is com.mysql.jdbc.Driver. See the documentation of your DBMS driver to
obtain the name of the class that implements the interface

Any JDBC 4.0 drivers that are found in your class path are
automatically loaded.
(However, you must manually load any drivers
prior to JDBC 4.0 with the method Class.forName.)

转载注明原文:java – 是否需要Class.forName()机制? - 代码日志