Java 用于SQLCipher的JDBC

Java 用于SQLCipher的JDBC,java,sqlite,jdbc,sqlcipher,Java,Sqlite,Jdbc,Sqlcipher,是否存在SQLCipher的JDBC驱动程序?我想用javaSE和加密的SQLite编写程序。我在互联网上搜索,在sqlcipherjdbc上找不到什么 或者除了使用SQLCipher之外,加密SQLite上的任何其他免费解决方案?我使用的是JavaSE。SQLite的JDBC驱动程序有一个分支,它将其修改为使用SQLCipher:。不过,你必须自己建造它 当您构建它时,您会得到一个必须在项目的类路径中提供的JAR文件。有一个Apache 2.0许可包,名为sqlite jdbc crypt(“

是否存在SQLCipher的JDBC驱动程序?我想用javaSE和加密的SQLite编写程序。我在互联网上搜索,在sqlcipherjdbc上找不到什么


或者除了使用SQLCipher之外,加密SQLite上的任何其他免费解决方案?我使用的是JavaSE。

SQLite的JDBC驱动程序有一个分支,它将其修改为使用SQLCipher:。不过,你必须自己建造它


当您构建它时,您会得到一个必须在项目的类路径中提供的JAR文件。

有一个Apache 2.0许可包,名为
sqlite jdbc crypt
(“支持加密和身份验证的sqlite jdbc驱动程序”),可在

单击中心的“Releases”选项卡下载一个pre-build.jar文件

下面是创建名为
db.sql
的加密SQLite数据库的示例Java代码,该数据库使用密码
apassword
加密:

package com.name.test;

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

public class Test {

    public static void main(final String[] args) {

        try (final Connection connection = DriverManager.getConnection("jdbc:sqlite:db.sqlite", "",
                "apassword")) {
            try (final Statement stmt = connection.createStatement()) {
                stmt.execute("CREATE TABLE test (data TEXT(10));");
                stmt.execute("INSERT INTO test VALUES('hello');");
            }
            connection.close();
        } catch (final SQLException e) {
            e.printStackTrace();
        }

        System.out.println("finished");
        System.exit(0);
    }
}

它有ODBC驱动程序吗?我想它也没有ODBC驱动程序。它有本机c/c++库吗?您可能有一个本机(x)应用程序连接到上下文,然后使用JNA、JNI或CORBA从java应用程序调用x。目前没有用于SQLCipher的公共JDBC驱动程序。如果您对JDBC驱动程序有商业需求,请在support@zetetic.net我们可以讨论一下。也就是说“(仅限OSX)”>这里目前包含的唯一本地二进制文件是用于64位OSX的。