問題タブ [ormlite]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
10152 参照

java - OrmLite で永続化されたクラスに enum フィールドを持つことは可能ですか?

OrmLiteで次のクラスを永続化しようとしています:

FieldTypeですpublic enum。SQLiteの is 文字列に対応するフィールドtype(is は列挙型をサポートしていません)。使用しようとすると、次の例外が発生します。

では、Java 側の値はenum?

0 投票する
2 に答える
4628 参照

java - DerbyとHsqldbでテーブルとフィールドの名前をエスケープする際の問題

ORMLiteパッケージに問題があります。テーブルのスキーマを生成するとき、すべてのエンティティ名をエスケープすることをお勧めします。これにより、一部のJavaクラスまたはフィールド名がSQLの予約語になるのを防ぐことができます。

ORMLiteがユーザーが独自のクエリを実行できるように、「生の」クエリサポートを追加しています。ただし、DerbyとHsqldbでは、エスケープせずにエンティティ名を使用することはできませ。たとえば、次のクエリ:

次のエラーが生成されます。

選択テーブルもとしてエスケープされている場合は、正常に機能します"footable"。ORMLiteでサポートされている他のデータベース(MySQL、Postgres、Microsoft SQL Server、H2、およびSqlite)は、エスケープの有無にかかわらず正常に動作します。

DerbyとHsqldbで予約語をエスケープするためのより良い方法はありますか?ポータブルな方法でこれを行う方法に関する他のアイデアはありますか?

ありがとう。

0 投票する
3 に答える
611 参照

java - 一般的な引数のクラスを取得することは可能ですか?

私はジェネリックスに少し不自由ですが、次のクラスについては疑問に思います。

たとえば呼び出された場合: コンストラクターで(またはTが何であれ)SomeClass<String> stringer = new SomeClass<String>("Hello"); 取得することは可能ですか?String.class

ちょっと待って、私が解決しようとしていることを説明します

実際の問題は、OrmLiteを使用していて、次のようなDAOオブジェクトがたくさんあることです。

それDomainは:

等々。私はこれらをパラメータ化して、1つしか持てないようにしたかったのです。

しかし、私はそのwhat here部分で立ち往生しています)

0 投票する
1 に答える
872 参照

sql - OrmLite でカスタム SQL を書くことは可能ですか?

OrmLiteで保持したいクラスがあり、そのデータのほとんどを HashMap に格納します。これらのフィールドを Sqlite のテーブルにマップし、マップに存在しないフィールドを として残しますnull。OrmLite を使用してカスタム実装でデータベースにレコードを保存するメソッドをオーバーライドすることは可能ですか?

0 投票する
2 に答える
3145 参照

java - Android のデフォルト SQLite で OrmLite を使用するにはどうすればよいですか

JDBC ドライバーを介してデフォルトの SQLite データベースを使用する際に大きな問題があります。これで ORMLite を使用したいと思います。コードを公開します。

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

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

よろしく、 アンドリュー

0 投票する
1 に答える
2355 参照

android - Android ORMLite、事前に入力されたデータベースを使用して使用する

事前に入力されたデータベースがあり、.csv を作成して sqllite マネージャーでデータベースを作成し、すべての値をこのデータベースにインポートしました。

今、私はこのデータベースを Android のアセット フォルダーに入れ、これを Android アプリケーションで ORMLite 経由で使用したいと考えています。

どうか、あなたの助けが必要です。あなたに感謝します。

0 投票する
1 に答える
2582 参照

android - AndroidとOrmLite:OnUpgradeが失敗する

AndroidのOrmLiteに小さな問題があります。

データベースのバージョンをインクリメントするonUpgradeと、OrmLiteヘルパーで期待どおりにメソッドが呼び出されます。アップグレード後、onCreateメソッドが呼び出され、次の例外が発生します。

クリアされた接続が保存された接続と同じでない理由がわかりません。

データベース関数(挿入...)もOrmLiteHelperクラスに入れました。多分これは問題かもしれませんか?!?

ヘルパークラスのスニペット:

それは私が見逃している単純なものだと思います。

よろしくお願いします。

0 投票する
2 に答える
610 参照

java - OrmliteSqliteOpenHelper での NoClassDefFound エラー

Android アプリケーションに永続性モジュールを提供するために OrmliteSqliteOpenHelper を拡張するクラスがあります。問題は、Eclipse のテスト プロジェクトからこのクラスにアクセスするたびに、NoClassDefFound 例外がスローされることです。パッケージがインポートされているため、ソース コードは問題ないように見えますが、何か問題が発生する可能性があることを示す Eclipse の強調表示はありません。

テスト プロジェクトからアクセスすると、プロジェクト内の他のすべてが正常に動作するだけでなく、このファイルをテスト プロジェクトの出来上がりに移動すると、完全に動作します。問題は、他のコンポーネントがそれを呼び出すために、実際のプロジェクトにある必要があることです。誰かがこのエラーに遭遇したことがありますか、または私がどこで間違っているのか考えていますか?

他のすべてのクラスが機能するため、クラス パスは正しく設定され、テスト プロジェクトには常にメイン プロジェクトがクラス パスに追加されます。また、OrmliteSqliteOpenHelper オブジェクトを内部クラスに移動しようとしました。これにより、外部クラスを表示して操作できるようになりましたが、内部クラスをインスタンス化しようとするとすぐに同じエラーが発生します。また、このファイルを同じパッケージ内の両方のプロジェクトにコピーすると、メイン プロジェクト内の何かがこのクラスにアクセスしようとするたびに、「検証済みクラスのクラス参照が予期しない実装に解決されました」というエラーが発生します。明らかに、2 つのプロジェクト間でクラスのコンパイル/処理方法に違いがあります。

私はかなり困惑しています:/ 助けてくれてありがとう!

0 投票する
4 に答える
23462 参照

android - Android で ORMLite を使用してネストされた異物を保存する

Android で作業する場合、ORMLite は浅いレベルのオブジェクトのみを保存しますか? どちらも新しく作成されたネストされたオブジェクトを含むデータ構造があり、dao.create() への 1 回の呼び出しで両方を保存できるようにしたいと考えています。

たとえば、次の親クラスがあります。

および次の子クラス。

以下ができるようになりたいです。

これを行うと、親オブジェクトは永続化されますが、子オブジェクトは永続化されずchild_id、親テーブルの自動生成された列は 0 に設定されます。これは正常な動作ですか? ネストされたオブジェクトを永続化し、主キーを伝播する方法はありますか?

0 投票する
2 に答える
2997 参照

android - OrmLite の削除に失敗しました

ormlite オブジェクトの単純な削除を実行しています。コードは以下です。しかし、何があっても、オブジェクトが削除されることはありません。

ここで何か不足していますか?