我在Eclipse中有一个项目,在Apache-Tomcat 7.0服务器上定义为“动态Web项目”
我需要在我的一些Java类中连接到hypersonic
DB(HSQLDB)。
我正在尝试制作的代码非常简单:
private Connection getConnection(){
Connection conn;
try {
Class.forName("org.hsqldb.jdbcDriver");
conn = driverManager.getConnection("jdbc:hsqldb:hsql://localhost","sa","");
return conn;
}
catch (Exception e) {
e.printStackTrace();
}
return null;
}
我已将hsqldb.jar
添加到某个lib
库中,该库位于我的项目中,并在Eclipse上的Java build path
中定义。
问题是我收到了这个错误:
java.lang.ClassNotFoundException: org.hsqldb.jdbcDriver
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1722)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1573)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at root.login.getConnection(login.java:75)
at root.login.doPost(login.java:35)
因此出于某种原因无法找到org.hsqldb.jdbcDriver
课程
我不得不说在此之前我已多次进行此配置,并且一切顺利。
有趣的故事:
我设法在同一配置上创建了另一个带有main函数和此函数的简单Java项目,并且 它在同一台机器上运行良好。
答案 0 :(得分:1)
在Web应用程序中,您必须将hsqldb.jar
文件添加到应用程序的WEB-INF/lib
文件夹中(如果您有更多使用它的Web应用程序,则添加到$TOMCAT_HOME/lib
文件夹中)。仅仅在Eclipse项目的类路径中使用它是不够的。