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 クラスを修正して、private final static String DRIVER_CLASS_NAME = "SQLite.JDBCDriver" にしました。しかし、ormlite2.8.jar(src) からすべてのクラスをインポートしたときに、ロガー、特に CommonsLoggingLog および Log4jLog クラスに関するエラーが見つかりました。誰かが、Android logger を使用する独自の Logger クラスを作成するようにアドバイスしましたが、私はそれを行う方法がわかりません。これは私が Android に使用している ORMLite です: http://ormlite.sourceforge.net/sqlite_java_android_orm.html

どんな助けでも大歓迎です。前もって感謝します。

よろしく、 アンドリュー

4

2 に答える 2

5

これはアンドリューの古い質問ですが、後世のために、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 に答える