SQLite - Java


SQLite是一种轻型的、高可靠性的嵌入式数据库。由于其小巧、便携和易于集成的特性,越来越多的Java应用程序将其作为首选的数据存储方案。SQLite - Java是一个用于连接SQLite数据库的纯Java驱动程序,无需安装和配置。

一、安装SQLite - Java驱动程序

可以从SQLite官网上下载对应版本的SQLite - Java驱动程序。将下载的jar文件复制到你的应用程序的classpath下。

二、创建数据库

首先需要在Java中创建一个数据库。需要使用Java的SQLite驱动程序的API方法创建一个Connection对象。然后,使用这个连接对象创建一个Statement或PreparedStatement对象,并利用它们执行SQL语句。

import java.sql.*;

public class CreateDatabase {
    public static void main(String[] args) {
        Connection connection = null;
        try {
            connection = DriverManager.getConnection("jdbc:sqlite:/path/to/database.db");
            Statement statement = connection.createStatement();
            statement.executeUpdate("CREATE TABLE users (username TEXT, password TEXT)");

            PreparedStatement preparedStatement = connection.prepareStatement("INSERT INTO users (username, password) VALUES(?, ?)");
            preparedStatement.setString(1, "john");
            preparedStatement.setString(2, "doe");
            preparedStatement.executeUpdate();

            ResultSet resultSet = statement.executeQuery("SELECT * FROM users");
            while(resultSet.next()) {
                System.out.println(resultSet.getString("username") + " " + resultSet.getString("password"));
            }
        } catch(Exception e) {
            System.out.println(e.getMessage());
        } finally {
            try {
                if(connection != null) connection.close();
            } catch(Exception e) {
                System.out.println(e.getMessage());
            }
        }
    }
}

三、查询数据库

查询可以使用Statement或PreparedStatement对象来执行。利用ResultSet对象,可以通过列名或索引号逐条处理数据。

import java.sql.*;

public class QueryDatabase {
    public static void main(String[] args) {
        Connection connection = null;
        try {
            connection = DriverManager.getConnection("jdbc:sqlite:/path/to/database.db");
            Statement statement = connection.createStatement();
            ResultSet resultSet = statement.executeQuery("SELECT * FROM users");
            while(resultSet.next()) {
                System.out.println(resultSet.getString("username") + " " + resultSet.getString("password"));
            }
        } catch(Exception e) {
            System.out.println(e.getMessage());
        } finally {
            try {
                if(connection != null) connection.close();
            } catch(Exception e) {
                System.out.println(e.getMessage());
            }
        }
    }
}

四、修改数据库

可以使用PreparedStatement对象来处理更新和删除操作。同样,可以使用Statement对象来处理更新和删除操作。调用executeUpdate()方法,并传入正确的SQL语句即可。

import java.sql.*;

public class ModifyDatabase {
    public static void main(String[] args) {
        Connection connection = null;
        try {
            connection = DriverManager.getConnection("jdbc:sqlite:/path/to/database.db");
            PreparedStatement preparedStatement = connection.prepareStatement("UPDATE users SET password=? WHERE username=?");
            preparedStatement.setString(1, "new_password");
            preparedStatement.setString(2, "john");
            int rows = preparedStatement.executeUpdate();
            System.out.println(rows + " row(s) updated.");
        } catch(Exception e) {
            System.out.println(e.getMessage());
        } finally {
            try {
                if(connection != null) connection.close();
            } catch(Exception e) {
                System.out.println(e.getMessage());
            }
        }
    }
}

通过这样几行Java代码,就能够轻松地实现SQLite - Java的数据存储和操作,为Java应用程序提供稳定耐用的数据存储机制。