使用glassfish的netbeans没有为mysql找到合适的驱动程序:jdbc

时间:2010-12-26 09:12:41

标签: java mysql netbeans jar glassfish

我是java ee中的菜鸟

但要学习它我应该连接到mysql!

我用Google搜索了一天:

Class.forName("com.mysql.jdbc.Driver").newInstance();
Connection connection = DriverManager.getConnection("mysql:jdbc://127.0.0.1:3036/shedule", "root", "12345");

表示:

java.sql.SQLException:找不到合适的mysql驱动程序:jdbc://127.0.0.1:3036 / shedule

0)mysql -h 127.0.0.1 -P 3306 -u root -p works

2)netstat说mysqld听了0.0.0.0:3306

3)最新的netbeans 6.9.1 + glassfish 3.0.1

4)我只有mysql-connector-java-5.1.6-bin.jar没有其他的罐子!在部署之前和之后搜索所有硬盘驱动器!

它位于: D:\ Program Files \ NetBeans 6.9 \ ide \ modules \ ext和 d:\的NetBeansProjects \ MyProject的\构建\网络\ WEB-INF \ lib中

5)我选择了“添加库”和mysql-connector-java-5.1.6-bin.jar

6)人们说netbeans将这个jar部署到了 D:\ Program Files \ glassfish-3.0.1 \ glassfish \ domains \ domain1 \ lib 但是在部署之后没有mysql-connector-java-5.1.6-bin.jar

7)我已将此连接器(5.1.14)的源解压缩到我的src / java文件夹

添加了库ant-contrib.jar c3p0-0.9.1-pre6.jar和jboss-common-jdbc-wrapper.jar

我的项目正常构建和部署,但可以使用此异常!

Finaly: alt text

3 个答案:

答案 0 :(得分:3)

该错误表示您的网址不正确。这就是那个例外通常意味着什么。

"mysql:jdbc://127.0.0.1:3036/shedule"  

应该是这样的:

"jdbc:mysql://127.0.0.1:3306/shedule"

“jdbc”和“mysql”是向后的。而且,如前所述,默认端口不正确。

你必须扭转你试图解决的所有疯狂的东西。您应该将MySQL连接器JAR放在一个位置,如果它是共享的应用程序服务器的/ lib目录,或者是应用程序的WEB-INF / lib。其他地方。

答案 1 :(得分:1)

我看到一个不一致的地方:

Connection connection = DriverManager.getConnection("mysql:jdbc://127.0.0.1:3036/shedule", "root", "12345");

您将3036指定为端口。

后来你说:

   netstat说mysqld听了0.0.0.0:3306

根据我的经验,3036 != 3306

答案 2 :(得分:0)

你在netbeans所要做的就是 1.启动一个新的Java Web应用程序项目 2.从这里下载最新的JDBC驱动程序;现在它的运行速度为5.1.14 3.提取该文件,并将.jar文件夹物理复制并粘贴到netbeans Web应用程序项目的“Libraries”文件夹中。 那就是它。