我在使用Hibernate时遇到了可怕的没有合适的驱动程序发现错误。我很确定驱动程序jar是在类路径中,因为我可以做Class.forName("com.mysql.jdbc.Driver")
。实际上现在我只是在构建会话工厂和代码之前调用它。但这是'安全'吗?这是为什么发生?下面是我的配置:Hibernate jdbc找不到合适的驱动程序
<session-factory>
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="hibernate.connection.url">jdbc:mysql://localhost:3306/test</property>
<property name="hibernate.connection.username">root</property>
<property name="hibernate.connection.password">password</property>
<property name="connection.pool_size">1</property>
<property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
<property name="show_sql">true</property>
<property name="format_sql">true</property>
<property name="use_sql_comments">false</property>
<mapping resource="User.hbm.xml" />
</session-factory>
谢谢
如果出现这种情况,可能是因为遇到类加载问题。与hibernate相比,jdbc驱动程序jar在哪里? – Jeroen 2012-04-18 14:05:28
我所有的罐子都位于'WEB-INF/lib'中。这很奇怪,就像我说的,我只是调用'Class.forName(“com.mysql.jdbc.Driver”);'在设置会话工厂并且一切正常之前,我可以查询我的数据库并返回数据。我只是想知道我的解决方案是否稳定和安全...... – WakaJawaka 2012-04-18 15:26:51