小弟初学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驱动的问题....
------解决方案--------------------