java通过JDBC连接数据库,老是报错:ClassNotFoundException.该导入的jar包我也已经导入了。
代码如下:publicfinalclassDBclass{publicstaticStringuser="root";publicstaticStringpassword...
代码如下:
public final class DBclass {
public static String user = "root";
public static String password = "admin";
public static String url = "jdbc:mysql://localhost:3306/money_manage";
public static String driver = "com.mysql.jdbc.Driver";
//构造函数
private void DBconnection(){}
//获取数据库连接;
public static Connection getConnection(){
Connection conn = null;
try{
//加载MySql的驱动类
Class.forName("driver") ;
conn = (Connection) DriverManager.getConnection(url, user, password);
}catch(ClassNotFoundException e){
System.out.println("找不到驱动程序类 ,加载驱动失败!");
e.printStackTrace() ;
}catch(Exception e){
System.out.println("database connect failed!");
e.printStackTrace();
}
return conn;
}
//关闭数据库资源
public static void closeDB(ResultSet rs, Statement st,Connection conn){
try{
if(rs != null)
rs.close();
}catch(Exception e){
e.printStackTrace();
}finally{
try{
if(st != null)
st.close();
}catch(Exception e){
e.printStackTrace();
}finally{
try{
if(conn != null)
conn.close();
}catch(Exception e){
e.printStackTrace();
}
}
}
}
public static void main(String args[]){
DBclass.getConnection();
}
}
报错:
找不到驱动程序类 ,加载驱动失败!java.lang.ClassNotFoundException: driver
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:169)
at DBclass.getConnection(DBclass.java:25)
at DBclass.main(DBclass.java:64)
导入的jar包是:mysql-connector-java-5.1.6-bin.jar
是导入到该工程的lib目录下的。
因为在工程中出现这个报错,所以将它单独的执行了一下,也是同样的错误。在网上百度了很多,都没有把问题解决,求高手指点一下。
对应的jar包 展开
public final class DBclass {
public static String user = "root";
public static String password = "admin";
public static String url = "jdbc:mysql://localhost:3306/money_manage";
public static String driver = "com.mysql.jdbc.Driver";
//构造函数
private void DBconnection(){}
//获取数据库连接;
public static Connection getConnection(){
Connection conn = null;
try{
//加载MySql的驱动类
Class.forName("driver") ;
conn = (Connection) DriverManager.getConnection(url, user, password);
}catch(ClassNotFoundException e){
System.out.println("找不到驱动程序类 ,加载驱动失败!");
e.printStackTrace() ;
}catch(Exception e){
System.out.println("database connect failed!");
e.printStackTrace();
}
return conn;
}
//关闭数据库资源
public static void closeDB(ResultSet rs, Statement st,Connection conn){
try{
if(rs != null)
rs.close();
}catch(Exception e){
e.printStackTrace();
}finally{
try{
if(st != null)
st.close();
}catch(Exception e){
e.printStackTrace();
}finally{
try{
if(conn != null)
conn.close();
}catch(Exception e){
e.printStackTrace();
}
}
}
}
public static void main(String args[]){
DBclass.getConnection();
}
}
报错:
找不到驱动程序类 ,加载驱动失败!java.lang.ClassNotFoundException: driver
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:169)
at DBclass.getConnection(DBclass.java:25)
at DBclass.main(DBclass.java:64)
导入的jar包是:mysql-connector-java-5.1.6-bin.jar
是导入到该工程的lib目录下的。
因为在工程中出现这个报错,所以将它单独的执行了一下,也是同样的错误。在网上百度了很多,都没有把问题解决,求高手指点一下。
对应的jar包 展开
展开全部
不劳而获的答案是正确,这个变量的意思是Driver这个类的路径,你对比下jar包里面的路径就知道了,class,forName意思是java里面的映射机制,有兴趣可以了解下
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2012-02-27
展开全部
你可以重装一下系统
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你看你的lib包是不是没有加载到classpath里?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
把你导入的包粘出来看下呢
追问
我上传图片了。。但是我这边好像看不到。jar包是这个:mysql-connector-java-5.1.6-bin.jar
在WEB-INF下面的lib.
追答
我不是要这个包,而是你代码顶部导入的包。类,到入的类那种包
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |