0

我对使用 Java 进行 Web 应用程序编程非常陌生。我有两个问题。

首先:我有一个 postgresql 数据库。在 servlet 之外进行操作时(作为 JUnit4 测试),我可以很好地访问数据库。但是,当我尝试通过 servlet 访问它时,我得到:

java.sql.SQLException: No suitable driver found for jdbc:postgresql://localhost:5432/comic_store
at java.sql.DriverManager.getConnection(DriverManager.java:602)
at java.sql.DriverManager.getConnection(DriverManager.java:185)
at ilya.database.DBService.<clinit>(DBService.java:15)
at ilya.database.UserGateway.getUserByEmail(UserGateway.java:29)
at ilya.controller.Login.<init>(Login.java:12) 

等等。为什么在从 servlet 访问时会抛出此异常,但否则不会。

第二:在 servlet 中初始化数据库连接的首选方式是什么?我应该使用 web.xml 创建数据源吗?

4

1 回答 1

0

在这里找到我的答案。Apache 的 JNDI Datasources HOW-TO也提供了帮助。这是有效的:将驱动程序 jar 添加到 %CATALINA_HOME%/lib 而不是 WEB-INF/lib,然后使用 Class.forName() 加载驱动程序。我尝试排除 Class.forName() 并得到相同的异常。我还尝试了仅在 WEB-INF/lib 中使用驱动程序的 Class.forName(),但这也不起作用。正如我上面所说,我正在运行 Tomcat 7 和 jdk 1.6.0。

于 2012-07-01T03:30:07.433 回答