yanchuen 发表于 2015-6-30 10:31:33

java.lang.ClassNotFoundException: com.microsoft.jdbc.sqlserver.SQLServerDriver E

  asp.net没学好,又要学jsp了....
1.
安装:SQL Server 2000 Driver for JDBC Service Pack 3
下载安装JDBC SP3
http://www.microsoft.com/downloads/details.aspx?familyid=07287B11-0502-461A-B138-2AA54BFDC03A&displaylang=en
里面的SetUp.exe
按照提示安装可以了.成功后有三个文件要使用:
c:\program files\Microsoft SQL Server 2000 Driver for JDBC\lib\msbase.jar
c:\program files\Microsoft SQL Server 2000 Driver for JDBC\lib\msutil.jar
c:\program files\Microsoft SQL Server 2000 Driver for JDBC\lib\mssqlserver.jar
  2.测试代码
新建类文件Connect.java.
  package test;
import java.*;
import java.sql.Driver;
public class Connect{
   private java.sql.Connectioncon = null;
   private final String url = "jdbc:microsoft:sqlserver://";
   private final String serverName= "localhost";
   private final String portNumber = "1433";
   private final String databaseName= "DBtest";
   private final String userName = "sa";
   private final String password = "123456";
   // Informs the driver to use server a side-cursor,
   // which permits more than one active statement
   // on a connection.
   private final String selectMethod = "cursor";
  // Constructor
   public Connect(){}
  private String getConnectionUrl(){
          return url+serverName+":"+portNumber+";databaseName="+databaseName+";selectMethod="+selectMethod+";";
  }
  private java.sql.Connection getConnection(){
          try{
               Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
               con = java.sql.DriverManager.getConnection(getConnectionUrl(),userName,password);
               if(con!=null) System.out.println("Connection Successful!");
          }catch(Exception e){
               e.printStackTrace();
               System.out.println("Error Trace in getConnection() : " + e.getMessage());
         }
          return con;
      }
  /*
          Display the driver properties, database details
   */
  public void displayDbProperties(){
          java.sql.DatabaseMetaData dm = null;
          java.sql.ResultSet rs = null;
          try{
               con= this.getConnection();
               if(con!=null){
                  dm = con.getMetaData();
                  System.out.println("Driver Information");
                  System.out.println("\tDriver Name: "+ dm.getDriverName());
                  System.out.println("\tDriver Version: "+ dm.getDriverVersion ());
                  System.out.println("\nDatabase Information ");
                  System.out.println("\tDatabase Name: "+ dm.getDatabaseProductName());
                  System.out.println("\tDatabase Version: "+ dm.getDatabaseProductVersion());
                  System.out.println("Avalilable Catalogs ");
                  rs = dm.getCatalogs();
                  while(rs.next()){
                         System.out.println("\tcatalog: "+ rs.getString(1));
                  }
                  rs.close();
                  rs = null;
                  closeConnection();
               }else System.out.println("Error: No active Connection");
          }catch(Exception e){
               e.printStackTrace();
          }
          dm=null;
   }
  private void closeConnection(){
          try{
               if(con!=null)
                  con.close();
               con=null;
          }catch(Exception e){
               e.printStackTrace();
          }
   }
   public static void main(String[] args) throws Exception
       {
          Connect myDbTest = new Connect();
          myDbTest.displayDbProperties();
       }
}
代码来源:
http://support.microsoft.com/default.aspx?scid=kb;zh-cn;313100
------------------------------------------
成功后控制台输出:
Connection Successful!
Driver Information
Driver Name: SQLServer
Driver Version: 2.2.0040
  Database Information
Database Name: Microsoft SQL Server
Database Version: Microsoft SQL Server2000 - 8.00.760 (Intel X86)
Dec 17 2002 14:22:05
Copyright (c) 1988-2003 Microsoft Corporation
Enterprise Edition on Windows NT 5.2 (Build 3790: )
  Avalilable Catalogs
catalog: DBtest
...........
  
3.问题:
在测试中控制台老输出下面的错误!
找资料找了很久.都说把jdbc安装后的三个jar文件的路径放进环境变量里可以了但我试了不行的!
java.lang.ClassNotFoundException: com.microsoft.jdbc.sqlserver.SQLServerDriver
.........
Error Trace in getConnection() : com.microsoft.jdbc.sqlserver.SQLServerDriver
Error: No active Connection
  请教了别人才找到办法:
包资源管理器-->包名右键"构建路径"-->配置构建路径-->java构建路径-->库-->添加外部JAR
把那三个JAR选择进去就可以了.



            

添加后三个JDBC文件就有了.
               
  慢慢学JSP.郁闷......
页: [1]
查看完整版本: java.lang.ClassNotFoundException: com.microsoft.jdbc.sqlserver.SQLServerDriver E