看看JAVA的API帮助吧。
The DriverManager class maintains a list of Driver classes that have registered themselves by calling the method DriverManager.registerDriver. All Driver classes should be written with a static section (a static initializer) that creates an instance of the class and then registers it with the DriverManager class when it is loaded. Thus, a user would not normally call DriverManager.registerDriver directly; it should be called automatically by a Driver class when it is loaded. 
不应该在程序中自己调用DriverManager.registerDriver,这个方法应该是在驱动程序被实例化时被驱动程序自己调用的。而用Class.forname()来显式注册驱动,才是应该做的,驱动被注册以后,在驱动在第一次被调用时被载入,DriverManager.registerDriver也就会自动执行。