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

想不通 救命啊
public   class   DBConnect
{
public   static   Connection   getConnection()
{
java.sql.Connection     con=null;
try
{
System.out.println(Config.CONN_DRIVER);
Class.forName(Config.CONN_DRIVER);
con=DriverManager.getConnection( "jdbc:mysql://localhost:3306/buy ", "root ", "12345678 ");

}   catch   (ClassNotFoundException   e)
{
//   TODO   自动生成   catch   块
e.printStackTrace();
}   catch   (SQLException   e)
{
//   TODO   自动生成   catch   块
e.printStackTrace();
}
if(con==null)
System.out.println( "no   get   connection ");
return   con;
}
这个程序报java.lang.ClassNotFoundException
这个不算什么


public   class   Test
{
public   static   void   main(String[]   args)
{
try
{
Class.forName(Config.CONN_DRIVER);
java.sql.Connection   con=DriverManager.getConnection(Config.CONN_URL,Config.CONN_USERNAME,Config.CONN_PASSWORD);
Statement   stmt=con.createStatement();
ResultSet   rs=stmt.executeQuery( "select   *   from   user ");
while(rs.next())
{
System.out.println(rs.getInt(1));
System.out.println(rs.getString(2));
}
}   catch   (ClassNotFoundException   e)
{
//   TODO   自动生成   catch   块
e.printStackTrace();
}   catch   (SQLException   e)
{
//   TODO   自动生成   catch   块
e.printStackTrace();
}
}
}
这个程序运行成功查到数据了

可我把这里面的Class.forName(Config.CONN_DRIVER);
java.sql.Connection   con=DriverManager.getConnection(Config.CONN_URL,Config.CONN_USERNAME,Config.CONN_PASSWORD);考到上面个程序为什么上面的程序出错


------解决方案--------------------
代码肯定没错,应该是你执行的方式,有问题吧,你这个Config.CONN_DRIVER怎么来的?
------解决方案--------------------
con=DriverManager.getConnection( "jdbc:mysql://localhost:3306/buy ", "root ", "12345678 ");
DriverManager.getConnection(Config.CONN_URL,Config.CONN_USERNAME,Config.CONN_PASSWORD);
试比较下面的定义的常量跟上面的有什么不同吗,毛病应该是出在这里了。