SQLite + 虚拟文件系统?
SQLite + Virtual File System?
我正在使用 SQLite
database and I want to open a .db
file from within a Jimfs
虚拟文件系统。使用以下代码,我可以将文件导入虚拟文件系统:
String databaseFilePath = "...";
Configuration configuration = Configuration.unix();
FileSystem fileSystem = Jimfs.newFileSystem(configuration);
Path targetDirectory = fileSystem.getPath("/");
Files.copy(Paths.get(databaseFilePath), targetDirectory);
接下来,当我尝试打开数据库文件时,我 运行 遇到了问题:
Connection connection = DriverManager.getConnection("jdbc:sqlite:" + databaseFileName);
我不能使用 String
s,因为只能使用 Path
对象引用虚拟文件。如何使用 Path
s 打开数据库连接?
SQLite 适用于 'real' 个文件。
为了能够在别处存储数据,您必须实现自己的 SQLite VFS。 (并非每个 JDBC 驱动程序都支持此功能。)
我正在使用 SQLite
database and I want to open a .db
file from within a Jimfs
虚拟文件系统。使用以下代码,我可以将文件导入虚拟文件系统:
String databaseFilePath = "...";
Configuration configuration = Configuration.unix();
FileSystem fileSystem = Jimfs.newFileSystem(configuration);
Path targetDirectory = fileSystem.getPath("/");
Files.copy(Paths.get(databaseFilePath), targetDirectory);
接下来,当我尝试打开数据库文件时,我 运行 遇到了问题:
Connection connection = DriverManager.getConnection("jdbc:sqlite:" + databaseFileName);
我不能使用 String
s,因为只能使用 Path
对象引用虚拟文件。如何使用 Path
s 打开数据库连接?
SQLite 适用于 'real' 个文件。
为了能够在别处存储数据,您必须实现自己的 SQLite VFS。 (并非每个 JDBC 驱动程序都支持此功能。)