当前位置:首页 > Java

java如何使用sqlite

2026-03-04 03:51:11Java

使用 Java 连接 SQLite 数据库

确保项目中包含 SQLite JDBC 驱动。可以通过 Maven 添加依赖:

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

创建数据库连接

使用 DriverManager.getConnection 建立连接,SQLite 的 JDBC URL 格式为 jdbc:sqlite:path/to/database.db

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class SQLiteDemo {
    public static void main(String[] args) {
        Connection conn = null;
        try {
            // 创建或连接到数据库文件
            conn = DriverManager.getConnection("jdbc:sqlite:sample.db");
            System.out.println("Connection to SQLite established.");
        } catch (SQLException e) {
            System.err.println(e.getMessage());
        } finally {
            try {
                if (conn != null) conn.close();
            } catch (SQLException e) {
                System.err.println(e.getMessage());
            }
        }
    }
}

执行 SQL 语句

通过 StatementPreparedStatement 执行 SQL 操作。以下示例创建表并插入数据:

Statement stmt = conn.createStatement();
stmt.execute("CREATE TABLE IF NOT EXISTS users (id INTEGER PRIMARY KEY, name TEXT, email TEXT)");

// 使用 PreparedStatement 防止 SQL 注入
PreparedStatement pstmt = conn.prepareStatement("INSERT INTO users (name, email) VALUES (?, ?)");
pstmt.setString(1, "Alice");
pstmt.setString(2, "alice@example.com");
pstmt.executeUpdate();

查询数据

使用 ResultSet 处理查询结果:

ResultSet rs = stmt.executeQuery("SELECT * FROM users");
while (rs.next()) {
    int id = rs.getInt("id");
    String name = rs.getString("name");
    String email = rs.getString("email");
    System.out.println("ID: " + id + ", Name: " + name + ", Email: " + email);
}
rs.close();

事务处理

通过 setAutoCommit(false) 启用事务,完成后调用 commit()

conn.setAutoCommit(false);
try {
    // 执行多个 SQL 操作
    conn.commit();
} catch (SQLException e) {
    conn.rollback();
    System.err.println("Transaction failed: " + e.getMessage());
} finally {
    conn.setAutoCommit(true);
}

关闭资源

确保关闭所有数据库资源以避免内存泄漏:

java如何使用sqlite

if (stmt != null) stmt.close();
if (pstmt != null) pstmt.close();
if (conn != null) conn.close();

注意事项

SQLite 适合嵌入式和小型应用,不支持多用户高并发场景。对于复杂查询,建议使用索引优化性能。JDBC 驱动会自动创建不存在的数据库文件,但需确保应用有文件系统的写入权限。

分享给朋友:

相关文章

如何打开java

如何打开java

打开 Java 程序的方法 通过命令行运行 Java 程序 确保已安装 Java Development Kit (JDK) 并配置环境变量。使用 javac 编译 .java 文件,生成 .clas…

如何编写java程序

如何编写java程序

安装开发环境 下载并安装JDK(Java Development Kit),推荐从Oracle官网或OpenJDK获取最新版本。安装完成后配置环境变量,确保JAVA_HOME和PATH正确设置。 选…

如何编译java文件

如何编译java文件

安装JDK 确保系统已安装Java Development Kit(JDK)。可通过命令行输入 javac -version 和 java -version 验证。若未安装,需从Oracle或Open…

react refs 如何使用

react refs 如何使用

React Refs 的基本概念 Refs 是 React 提供的一种访问 DOM 节点或 React 组件实例的方式。通常在 React 的数据流中,父子组件通过 props 进行通信,但在某些情况…

java中如何输入

java中如何输入

输入方法 在Java中,可以通过多种方式实现输入操作,具体取决于输入来源和需求。以下是几种常见的输入方法: 使用Scanner类 Scanner类是Java中最常用的输入工具,适用于从控制台或文件读…

如何启用java

如何启用java

启用 Java 的方法 检查 Java 是否已安装 在命令行或终端输入 java -version,如果显示版本信息,说明 Java 已安装。若未安装,需从 Oracle 官网 或 OpenJDK 下…