MyEclipse连接MySQL的问题的来由,本来之前已经在Eclipse下做好了那个名片管理系统,可是用了段时间的Eclipse,觉得装上各种插件之后Eclipse变得好卡好卡,点什么都要反应好一会儿,尤其是开始的时候,于是决定改成用MyEclipse来学习Struts2。
遇到的第一个问题,就是在MyEclipse中连接数据库MySQL。按照之前在Eclipse中连接MySQL的方法没有成功,总是提示java.sql.SQLException: No suitable driver 也就是没有找到合适的数据库驱动程序。于是寻找解决方法,按照网上给出的若干方法尝试,比如将mysql-connector的那个jar包放到各种各样的位置,然后加一环境变量中等等。结果都没有成功。于是又打开了MySQL自带的那个帮助文档connector-j,里面说的方法也是把那个jar包加到环境变量中,不过我试了也没有成功。
然后我就怀疑是不是自己的测试程序写错了,于是又把Eclipse打开,比照了一下,没有发现问题。虽然按照connector-j的方法没有成功,但也给了我一点提示,里面说如果是java-web开发的话,就要把那个jar包放到WEB-INF的lib目录下,因为这是个标准的加载第三方库的地方。于是我就想假设我不做web,只是一个application的测试程序,那么也就不要放到这个lib目录下,而是放到jre system library下了。于是,把mysql驱动带的那个jar包放到%java_home%下的各个可能目录下,结果在MyEclipse的jre system library下都没有发现这个包。仔细一看,吓了一跳,发现问题的本质所在,原来MyEclipse中默认使用的是MyEclipse自己提供的一个jre库,而不是使用我们安装的那个。知道这个,问题就好办了。在新建工程的时候,不用MyEclipse提供的那个jre库,手动到目录中选择安装的那个jre,这里有个小地方要注意一下,选择jre home directory的时候选择到jdk的根目录就好了,比如说我的安装在R:\program\jdk1.6,那么选择的路径也就是这个了,当然还是要把MySQL驱动程序提供的那个包复制到%java_home%\jre\lib\ext中。再次执行测试程序,输出"connect successfully"
另外一种方法,就不需要在重建一个工程了。右键点击JRE System Library->Build Path->Configure Build Path,再选择右侧的Edit按钮,在Alternate JRE中选择到自己安装的那个,如果没有,就点旁边的Installed JREs来找到即可。
测试程序:
- package com.javaeye.rennyit.dbtest;
- import java.sql.DriverManager;
- import java.sql.Connection;
- import java.sql.SQLException;
- public class MySQLTest {
- private static String dburl = "jdbc:mysql://localhost:3306/Cardms?user=root&password=mysql";
- public MySQLTest() {
- try {
- Connection con = DriverManager.getConnection(dburl);
- System.out.println("connect successfully");
- } catch(SQLException se) {
- se.printStackTrace();
- }
- }
- public static void main(String[] args) {
- new MySQLTest();
- }
- }
当然其中dburl根据实际情况确定,上面的测试程序中Cardms指在数据库中自己建立的数据库名。
MyEclipse连接MySQL的问题就介绍到这里,希望对你有帮助。
【编辑推荐】