问题描述
本Class
类位于java.lang包,因此在分布用java,并自动导入到每个班级。
该forName()
方法所做的只是返回Class
由类加载器加载的参数对象。newInstance()
然后,该方法返回该类的新实例。
因此,发生什么情况是您将 Class.forName(...)
其称为com.mysql.jdbc.Driver.class。然后newInstance()
,您调用该类,该类返回该类的实例,没有任何参数,因此基本上是在调用new
com.mysql.jdbc.Driver();
。
解决方法
连接到MySQL数据库时,请执行以下步骤
Connection con = null;
Resultset rs = null;
Statement st = null;
Class.forName("com.mysql.jdbc.Driver").newInstance();
con = DriverManager.getConnection("jdbc:mysql://localhost:3306/database","root","passwp");
实际上,我想知道Class.forName("com.mysql.jdbc.Driver").newInstance();
语句的作用。
此类不在mysql.jar中。它在哪里?