1

我通过 JDBC 驱动程序使用默认 SQLite 数据库时遇到了一个大问题。我想将 ORMLite 与此一起使用。让我公开我的代码:

String databaseUrl = "jdbc:sqlite:/data/data/my.package.name/db.sqlite";

Class.forName("SQLite.JDBCDriver");
DriverManager.getConnection(databaseUrl);

dataSource = DatabaseTypeUtils.createSimpleDataSource(databaseUrl);
databaseType = DatabaseTypeUtils.createDatabaseType(dataSource);
databaseType.loadDriver();

UpDao = new UserProfileJdbcDao(databaseType);
UpDao.setDataSource(dataSource);
UpDao.initialize();

我下载了 ormlite2.8.jar (src) 并修改了 SqliteDatabaseType 类,以便私有最终静态 String DRIVER_CLASS_NAME = "SQLite.JDBCDriver" 。但是,当我从 ormlite2.8.jar(src) 导入所有类时,我发现有关记录器的错误,特别是 CommonsLoggingLog 和 Log4jLog 类。有人建议我编写自己的使用 Android 记录器的 Logger 类,但我不知道该怎么做。这是我用于 Android 的 ORMLite:http: //ormlite.sourceforge.net/sqlite_java_android_orm.html

我非常感谢任何帮助。先感谢您。

Regads,安德鲁

4

2 回答 2

5

这是一个老问题 Andrew,但对于后代来说,ORMLite对 Android OS 数据库调用具有原生支持。我建议升级并尝试一下。这里有示例项目、文档和下载:

http://ormlite.com/sqlite_java_android_orm.shtml

于 2010-10-20T15:33:08.807 回答
3

在 ORMlite 的文档中提到,没有直接依赖关系,只有在类路径中提供 Log4J 时才会使用。

您确定导入完整代码是使用 ORMlite 的正确方法吗?

那怎么样:http: //ormlite.sourceforge.net/javadoc/doc-files/ormlite_5.html#SEC25 你应该做第一句话中提到的:

DatabaseType databaseType = new SqliteAndroidDatabaseType();
databaseType.loadDriver();
// change this for your path and application name
String databaseUrl = "jdbc:" + databaseType.getDriverUrlPart() + ":" +
    getFilesDir() + "/test.db";
SimpleDataSource dataSource =
    DatabaseTypeUtils.createSimpleDataSource(databaseUrl);

// configure and use your dao as in previous examples
于 2010-08-16T13:48:35.470 回答