在java连接数据库的时候,必不可少的一个操作,Class.forName();
这样就是用到了java的反射机制,加载了数据库驱动的类,
但是问题就是,我只是加载了,但是没有具体的调用啊,下面紧接着就是DriverManage的使用了,
没有把相应的Class.forName()赋值给一个Class的实例对象,那么在内存里面他是具体怎么实现的呢?
这样就是用到了java的反射机制,加载了数据库驱动的类,
但是问题就是,我只是加载了,但是没有具体的调用啊,下面紧接着就是DriverManage的使用了,
没有把相应的Class.forName()赋值给一个Class的实例对象,那么在内存里面他是具体怎么实现的呢?
public static void main(String[] args)throws Exception{
Class.forName("com.A");
System.out.println(a);
}
}class A{
static{
Test.a = 10;
}
}在加载drivers的时候可以告诉DriverManager处理的是什么数据库,需要什么样的URL等等信息。
Class.forName(className, true, currentLoader)
A call to forName("X") causes the class named X to be initialized.