知識庫 / Spring / Spring Boot RSS 訂閱

Spring Boot 與 SQLite 教程

Spring Boot,Spring Persistence
HongKong
4
01:34 PM · Dec 06 ,2025

1. 概述

本快速教程將介紹如何在啓用了 JPA 的 Spring Boot 應用程序中使用 SQLite 數據庫的步驟。

Spring Boot 支持一些常用的內存數據庫,但 SQLite 則需要我們做一些額外的配置。

讓我們來了解一下具體需要做什麼。

2. 項目設置

為了説明目的,我們將從一個 Spring Data Rest 應用 我們之前教程中使用的應用開始。

在 pom 文件中,我們需要添加 sqllite-jdbc 依賴項:

<dependency>
    <groupId>org.xerial</groupId>
    <artifactId>sqlite-jdbc</artifactId>
    <version>3.25.2</version>
</dependency>

這個依賴項為我們提供了使用 JDBC 與 SQLite 進行通信所需的組件。

3. SQLite 變體

從 Hibernate 6 開始,支持 SQLite 變體。

我們需要在我們的 pom.xml 中導入:

<dependency>
    <groupId>org.hibernate.orm</groupId>
    <artifactId>hibernate-community-dialects</artifactId>
</dependency>

在我們的應用程序屬性中:

spring.jpa.database-platform=org.hibernate.community.dialect.SQLiteDialect

4. 數據源 配置

此外,由於 Spring Boot 默認不提供 SQLite 數據庫的配置支持,因此我們也需要暴露自己的 數據源 Bean:

@Autowired Environment env;

@Bean
public DataSource dataSource() {
    final DriverManagerDataSource dataSource = new DriverManagerDataSource();
    dataSource.setDriverClassName(env.getProperty("driverClassName"));
    dataSource.setUrl(env.getProperty("url"));
    dataSource.setUsername(env.getProperty("user"));
    dataSource.setPassword(env.getProperty("password"));
    return dataSource;
}

最後,我們將配置以下屬性在我們的 persistence.properties 文件中:

driverClassName=org.sqlite.JDBC
url=jdbc:sqlite:memory:myDb?cache=shared 
username=sa 
password=sa
spring.jpa.database-platform=org.hibernate.community.dialect.SQLiteDialect 
hibernate.hbm2ddl.auto=create-drop
hibernate.show_sql=true

請注意,為了確保數據庫更新在多個數據庫連接之間可見,我們需要將緩存保持為共享狀態。

因此,在上述配置下,應用程序將啓動並啓動一個內存數據庫,名為 myDb,Spring Data Rest 的其餘配置可以利用它。

5. 結論

在本文中,我們使用了一個示例 Spring Data Rest 應用程序並將其指向一個 SQLite 數據庫。為了實現這一點,我們必須創建一個自定義的 Hibernate 方言。

user avatar
0 位用戶收藏了這個故事!
收藏

發佈 評論

Some HTML is okay.