【问题标题】:How do I open a read-only SQLite database located in a WAR file?如何打开位于 WAR 文件中的只读 SQLite 数据库?
【发布时间】:2016-03-31 15:52:24
【问题描述】:

我正在使用只读 SQLite 数据库部署 servlet WAR。应该怎么打开?

现在我在我的测试服务器上使用DriverManager.getConnection("jdbc:sqlite:ABSOLUTEDIR/myDb.db");,但我想将它包含在我的 WAR 中以简化部署。

我可以用DriverManager.getConnection("jdbc:sqlite:myDb.db"); 打开它吗?我应该把 myDb.db 放在哪里?

【问题讨论】:

标签: java servlets jakarta-ee jdbc


【解决方案1】:

一些 Servlet-Container 支持在 ServletContext 上调用 getRealPath()。至少如果你将你的战争作为一个爆炸的 web 应用程序运行。

一旦你掌握了你的 ServletContext,你就可以这样做:

 ServletContext ctx = //you need to do this
 String dbPath = ctx.getRealPath("/WEB-INF/sql.db");
 Connection con = DriverManager.getConnection("jdbc:sqlite:"+dbPath); 

祝你圣诞快乐

【讨论】:

    猜你喜欢
    • 2011-06-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-11
    • 2014-08-30
    • 2014-12-06
    相关资源
    最近更新 更多