有谁能描述一下JDBC的工作原理吗?比如JDBC驱动管理器的作用等。
还有 Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
con=DriverManager.getConnection(jdbc:sqlserver://localhost:1433;databasename=northwind,“sa”,“123456”);
         stmt=con.createStatement();
这种连接方式是属于JDBC的Driver的那种类型呢?

解决方案 »

  1.   

    Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");执行后,ClassLoader加载SQLServerDriver到JVM中,并加载此类的static段
    根据JDBC规范,在此static段中必须调用DriverManager.registerDriver注册自己DriverManager.getConnection时,DriverManager会遍历所有已经注册的Driver
    逐个调用其中的Driver.acceptsURL方法
    如果此Driver接受此URL,则调用Driver.connect方法返回一个Connection连接
    Driver属于什么类型是不能直接从代码上看出来,具体要看Driver的实现方式