连接到Tomcat上的Access数据库

时间:2016-05-23 17:36:38

标签: java tomcat ucanaccess

尝试将.mdb文件放在tomcat上并访问它。 它在本地工作,但在尝试将其部署到本地tomcat服务器后,它会抛出异常。 这是引发错误的行:

  Connection dbConnection = DriverManager.getConnection("jdbc:ucanaccess://" +     dbName);

我应该设置DNS吗?如果是这样,我该如何为tomcat服务器执行此操作?

谢谢!

编辑: 例外:

SEVERE: Servlet.service() for servlet [spring-mvc] in context with path         [/project] threw exception [Request processing failed; nested exception is     net.ucanaccess.jdbc.UcanaccessSQLException: UCAExc:::3.0.5 given file does not exist: NZDB1.mdb] with root cause
java.io.FileNotFoundException: given file does not exist: NZDB1.mdb
at com.healthmarketscience.jackcess.impl.DatabaseImpl.open(DatabaseImpl.java:365)
at com.healthmarketscience.jackcess.DatabaseBuilder.open(DatabaseBuilder.java:252)
at net.ucanaccess.jdbc.DefaultJackcessOpener.open(DefaultJackcessOpener.java:35)
at net.ucanaccess.jdbc.DBReference.<init>(DBReference.java:160)
at net.ucanaccess.jdbc.DBReferenceSingleton.loadReference(DBReferenceSingleton.java:51)
at net.ucanaccess.jdbc.UcanaccessDriver.connect(UcanaccessDriver.java:99)
at java.sql.DriverManager.getConnection(DriverManager.java:664)
at java.sql.DriverManager.getConnection(DriverManager.java:270)
at DAL.DbHandler.<init>(DbHandler.java:22)

试图将文件放在WEB-INF旁边的所有不同位置,等等。

1 个答案:

答案 0 :(得分:0)

如果数据库文件位于项目的WEB-INF文件夹中,那么您应该可以使用

"jdbc:ucanaccess://" + application.getRealPath("WEB-INF/" + dbName)

作为传递给getConnection的连接网址。