java在eclipse工具里面要如何连接mysql的数据库进行操作啊?

我在我电脑mysql-connector-java-5.1.20.zip上安装了mysql-5.5.24-win32.msi,创建了数据库orcl 用户名为root 密码为123,下载了mysql-connector-java-5.1.20.zip并将其解压后拷在了java安装目录D:\Program Files\Java\jdk1.7.0_03\lib下,并在环境变量里把D:\Program Files\Java\jdk1.7.0_03\lib\mysql-connector-java-5.1.20\mysql-connector-java-5.1.20-bin.jar加了进去,然后我在eclipse里面连接数据库代码如下:
import java.sql.*;
public class Conn {
Connection con;
public Connection getConnection(){
try{
Class.forName("com.MySQL.jdbc.Driver");
System.out.println("数据库驱动加载成功");
}catch(ClassNotFoundException e){
e.printStackTrace();
}
try{
con=DriverManager.getConnection("jdbc:MySQL://127.0.0.1:3306/orcl","root","123");
System.out.println("数据库连接成功");
}catch(SQLException e){
e.printStackTrace();
}
return con;
}
public static void main(String[] args) {
// TODO Auto-generated method stub
Conn c=new Conn();
c.getConnection();
}

}
但执行时就报错:
java.lang.ClassNotFoundException: com.MySQL.jdbc.Driver
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:186)
at Conn.getConnection(Conn.java:10)
at Conn.main(Conn.java:26)
java.sql.SQLException: No suitable driver found for jdbc:MySQL://127.0.0.1:3306/orcl
at java.sql.DriverManager.getConnection(DriverManager.java:604)
at java.sql.DriverManager.getConnection(DriverManager.java:221)
at Conn.getConnection(Conn.java:16)
at Conn.main(Conn.java:26)
弄了两个小时了没找到原因,求高人指点!!!

第1个回答  2012-05-08

应该还有个jar包,你导入没有?看图

追问

换了种方法:
1.在eclipse里面 项目——属性——Java构建路径——库选项——添加外部JAR——找到mysql-connector-java-5.1.20.zip解压后的mysql-connector-java-5.1.20-bin.jar添加进去。
2.在代码里把 Class.forName("com. mysql.jdbc.Driver");在的这段去掉
但又出现了个新问题,查询出来的表里中文显示是?,但在数据里是对的。

追答

说明是你的编码问题,你应该统一用一种编码格式,例如utf-8

第2个回答  2012-05-08

com.mysql.jbdc.Driver改成这个试试...

第3个回答  推荐于2017-08-07
应该是楼上说的那样,那句是加载mysql数据库的驱动类,驱动类在jar包里面,你可以打开jar包看看那个驱动类的包名,一般来讲都应该是小写的,只有类名首字母是大写的
第4个回答  2012-05-08
Class.forName("com.MySQL.jdbc.Driver");
MySQL小写追问

试过了,换成小写的也不行。

追答

("jdbc:MySQL://127.0.0.1:3306/orcl","root","123");
这里也改成小写,还有就是你把那个驱动的jar包直接放到项目里面,然后右键Build path--add。。。

追问

换了种方法:
1.在eclipse里面 项目——属性——Java构建路径——库选项——添加外部JAR——找到mysql-connector-java-5.1.20.zip解压后的mysql-connector-java-5.1.20-bin.jar添加进去。
2.在代码里把 Class.forName("com. mysql.jdbc.Driver");在的这段去掉就可以连接数据库了
但又出现了个新问题,查询出来的表里中文显示是?,但在数据里是对的。

追答

这个问题比较麻烦,因为mysql数据库的编码格式和你显示数据时的编码格式不一致,所以会导致乱码的问题,你要先看看你mysql用的是什么编码格式,然后再用同一个编码格式显示,或者你把mysql的编码格式设置成你要显示的那种编码格式。

本回答被提问者采纳
第5个回答  2012-05-08
先com.MySQL.jdbc.Driver改成com.mysql.jdbc.Driver
这些jar包怎么搞的这么复杂啊??直接把mysql的驱动包放到你的项目的lib目录下不就完了吗