我在家里的电脑上用eclipse建了一个简单的hibernate工程.
运行的时候碰到no suitable driver found for jdbc:mysql//localhost:3306/qzhao 异常。 我在网上搜了很多答案,比如把jar放在jre/lib/ext下面,都不行。
奇怪的是在我单位工作电脑上,同样的项目就能work。也没有把jar包放在jre下面。我家里用的是win7,jdk装在C:\pogram files下面。连接配置都是好的。还有家里mysql是和eclipse装在同一台电脑上。工作单位是在服务器上。
请高手解释?昨晚折腾了一夜。最后网速暴慢就睡觉了。
[b]问题补充:[/b]
我的不是一个web程序,就是一个普通的eclipse java project。我已经把jar加到eclipse project里面了。而且用这个jar包用一般的java code可以连接啊
[b]问题补充:[/b]
谢谢各位的答案
出现这样的情况,一般有四种原因:
一:连接URL格式出现了问题(Connection conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/XX","root","XXXX")
<!-- Database connection settings -->
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="connection.url">jdbc:mysql://10.111.3.244:3306/qzhao_opbook</property>
<property name="connection.username">qzhao</property>
<property name="connection.password">qzhao</property>
<!-- JDBC connection pool (use the built-in) -->
<property name="connection.pool_size">1</property>
<!-- SQL dialect -->
<property name="dialect">org.hibernate.dialect.MySQLDialect</property>
<!-- Enable Hibernate's automatic session context management -->
<property name="current_session_context_class">thread</property>
<!-- Disable the second-level cache -->
<property name="cache.provider_class">org.hibernate.cache.NoCacheProvider</property>
<!-- Echo all executed SQL to stdout -->
<property name="show_sql">true</property>
<!-- Drop and re-create the database schema on startup -->
<property name="hbm2ddl.auto">update</property>
<mapping resource="org/hibernate/tutorial/domain/Event.hbm.xml" />
而且在我单位电脑能work
二:驱动字符串出错(com.mysql.jdbc.Driver)
三:Classpath中没有加入合适的mysql_jdbc驱动(驱动要和你的数据库版本一致)
这个我用的是mysql-connector-java-5.0.4-bin.jar,数据库是5.0
四:驱动jar包放的位置不对
我把它加到eclipse project build path里面的。同样在单位电脑上可以工作的。所以我很疑惑,难道是因为家里的电脑jdk路径下面有空格或者是win7的原因??
[b]问题补充:[/b]
问题找到了,是url错了。
分就给walsh吧