日期:2014-05-20  浏览次数:20781 次

小弟初学JAVA,JDBC连接错误,请大侠指点!
//获取数据库连接的代码

import   java.sql.SQLException;
import   java.sql.Connection;
import   java.sql.Statement;
import   java.sql.ResultSet;  
import   java.sql.DriverManager;
import   java.sql.Date;
import   java.util.Properties;
import   java.io.FileInputStream;
import   java.io.IOException;
import   java.io.FileNotFoundException;

public   class   GetConn
{
private   Connection   con;
private   String   url;//数据库URL
private   String   userName;//登录数据库用户名
private   String   password;//用户密码
private String   name= "方法 ";
private   String   driver1;
public   static   void   main(String[]   args)
{

GetConn   dbConn   =   new   GetConn();
dbConn.getProperty();
Connection   con   =   dbConn.getConnection();


}
/**
  *   返回到数据库的一个连接,在一个系统或类中,如果经常进行数据库的相关操作
  *   会把建立数据库的连接作为一个单独的方法。
  */
public   Connection   getConnection()
{
try
{
Class.forName(+driver1);
con   =   DriverManager.getConnection(url,   userName,   password);
}
catch(SQLException   e)
{
e.printStackTrace();
}

return   con;
}

/**
  *   读取属性配置文件
  */
public   void   getProperty()
{
Properties   prop   =   new   Properties();
try
{
FileInputStream   in   =   new   FileInputStream( "Drivers.properties ");
prop.load(in);

String   driver   =   prop.getProperty( "drivers ");
if(driver   !=   null)
System.setProperty( "jdbc.drivers ",   driver);
url   =   prop.getProperty( "url ");
userName   =   prop.getProperty( "user ");
password   =   prop.getProperty( "password ");
String   aa=url;
String   bb=userName;
String   cc=password;
System.out.println(aa+bb+cc);
driver1=driver;
}
catch(FileNotFoundException   e)
{
e.printStackTrace();
}
catch(IOException   e)
{
e.printStackTrace();
}
}
}

//属性文件内容
drivers=com.microsoft.jdbc.sqlserver.SQLServerDriver
url=jdbc:microsoft:sqlserver://xyz:1433;DatabaseName=java
user=sa
password=123


编译后执行   JAVA   GETconn   提示:
java.sql.SQLException:NO   SUITABLE   Driver
at   java.sql.DriverManager.getConnection(Unknown   Source)
.........
为什么会提示没有合适的驱动,我应该怎样才可以运行,请指教,谢谢了!


------解决方案--------------------
你加sqlserver的jar包了吗?
------解决方案--------------------
Class.forName(+driver1);
这句写错了吧,+号是哪来的.
------解决方案--------------------
你的JAR包和数据库版本不对吧。或者没打补丁
------解决方案--------------------
driver1 从property文件中取,lz在property文件中找到了 driver的相关内容么?

如果没有,建议lz直接写成字符窜算了。


------解决方案--------------------
偶觉得是JDBC驱动的问题....

------解决方案--------------------