使用jpa访问sqlite数据库文件

Luc*_*oni 5 database sqlite spring jpa

我有一个巨大的 sqlite 文件,其中包含我的数据库。我需要知道是否可能以及如何使用 jpa 作为嵌入式数据库连接到该数据库。我正在开发一个应用程序,将该数据库打包在它自己的 jar 中,这样当我在另一个系统上使用它时,我就不必来回导入数据库的副本。我想使用的技术是 Angular 和 Spring,因为这些是我最了解的技术。如果有一些技术更适合这个目的,我想要一些建议。

谢谢 :)

Sem*_*emo 7

我希望我正确理解了你的问题,所以我为你做了一个小项目,因此你可以看看它:spring-jpa-sqlite-sample。它可能会为您提供一些指导,但我并不声称其正确性或完整性。

通过在文件中插入正确的 url 可以轻松更改 sqlite 文件的路径persistence.properties

driverClassName=org.sqlite.JDBC
url=jdbc:sqlite:src/main/resources/chinook.db  --> you may use relative paths.
hibernate.dialect=dev.mutiny.semo.config.SQLiteDataTypesConfig
hibernate.hbm2ddl.auto=none
hibernate.show_sql=true
Run Code Online (Sandbox Code Playgroud)

您还可以使用EnvironmentSpring 尝试读取的系统变量,以便您可以将正确的目录引用到文件。这可以在这里找到:读取系统环境变量(SO)

最后但并非最不重要的。小心使用巨大的 SQLite 文件。找到另一种方法,首先将其传输到“真正的”数据库,就像您知道的任何其他客户端/服务器 RDBMS(Oracle、MariaDB、MSSQL,取决于您的场景/品味)。

仔细查看文档:何时使用 SQLite(何时不使用!)