2011-04-14 58 views
0

我在嘗試一個示例休眠程序,連接到MS SQL DB並執行一些sql。 我已經創建了hbm和cfg.xml文件,但執行過程中出現以下異常。休眠示例程序中的異常

java.sql.SQLException: No suitable driver 
    at java.sql.DriverManager.getConnection(DriverManager.java:545) 
    at java.sql.DriverManager.getConnection(DriverManager.java:140) 
    at org.hibernate.connection.DriverManagerConnectionProvider.getConnection(DriverManagerConnectionProvider.java:133) 
    at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:111) 
    at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2101) 
    at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1325) 
    at com.persistent.demo.HibernateUtil.<clinit>(HibernateUtil.java:12) 
    at com.persistent.demo.HelloWorld.main(HelloWorld.java:15) 
Exception in thread "main" java.lang.ExceptionInInitializerError 
    at com.persistent.demo.HibernateUtil.<clinit>(HibernateUtil.java:14) 
    at com.persistent.demo.HelloWorld.main(HelloWorld.java:15) 
Caused by: org.hibernate.HibernateException: Dialect class not found: net.sf.hibernate.dialect.SQLServerDialect 

我沒有得到我是否錯過了任何jar文件或有任何其他問題。 請幫忙。

謝謝。 -Uday

+0

可以請您發佈您的classpath中有哪些罐子? – 2011-04-14 10:14:24

+0

它似乎是您的驅動程序的問題。 請發佈您的hibernate.cfg.xml。 – 2011-04-14 10:17:46

+0

以下jar文件有: ANTLR-2.7.5H3.jar, ANTLR-2.7.6rc1.jar, asm.jar, c3p0-0.8.5.2.jar, CGLIB-2.1.3.jar, CGLIB -2.1.jar, DOM4J-1.6.1.jar, DOM4J-1.6.jar, hibernate.jar文件, 了Javassist-3.4.GA.jar jta.jar, 的log4j-1.2.9.jar, OSCache的-2.1.jar, OSCache的-2.2.jar, SLF4J-API-1.5.2.jar, SLF4J-log4j12-1.5.2.jar, swarmcache-1.0rc2.jar, MySQL的連接器的Java-3.1 .7-bin.jar – Uday 2011-04-14 10:18:05

回答

0

是否在類路徑中添加了Mssqlserver.jar?或檢查你的連接網址

+0

Mysqls erver.jar不存在,但它的位置我有「mysql-connector-java-3.1.7-bin.jar」 – Uday 2011-04-14 10:58:38

+0

我寫了Mssqlserver.jar而不是Mysqlserver.jar oky – p27 2011-04-14 11:19:43

+0

您的goning與MsSql db連接,所以使用jar for那,不適用於MySQL數據庫。 – p27 2011-04-14 11:21:15

2

Dialect class not found: net.sf.hibernate.dialect.SQLServerDialect

你需要把罐,含有這個類,在你的類paht。

問題是,您需要的方言是:org.hibernate.dialect.SQLServerDialect這是在hibernate核心jar中aviable。

+0

感謝您的回覆,我添加了hibernate3.jar,其中包含SQLServerDialect類。但沒用。它仍然顯示相同的例外。 – Uday 2011-04-14 10:24:41

+3

注意,這是兩個不同的類,一個'net.sf.hibernate'和一個'org.hibernate'。 – Ralph 2011-04-14 10:25:48