2017-04-19 7 views
-1

に単一のデータベース・ヘルパー・オブジェクトを共有する私はormlite私のアプリケーション

にデータベースヘルパーに関連する質問がある私は、データベースのヘルパーを持っているし、すべての活動に私はこのような現在のコンテキストに新しいインスタンスを作成します。

DatabaseHelper  helper = new DatabaseHelper(this); 
Dao<User, Integer> userDao = null; 
try { 
    userDao = helper.getUserDao(); 
} catch (SQLException e) { 
    e.printStackTrace(); 
} 

アプリケーションクラスにデータベースヘルパーのオブジェクトを1つしか作成せず、getApplicationContextメソッドを使用して取得するとどうなりますか?アプリケーションには単一のヘルパーオブジェクトしかありません

これは正しい方法ですか?

+0

すべてのアクティビティで1つのインスタンスのみを共有する場合は、1つのヘルパーしか持たないことになります。あなたはなぜ – AxelH

答えて

0

はい、常にアプリケーション全体でDatabaseHelperの単一のインスタンスを使用する必要があります。

+0

があなたが理由を説明するのに気をつけていると疑っているのですか? –

+0

アプリケーション全体でDatabaseHelperの同じインスタンスを使用できます。これにより、メモリを消費する不要なオブジェクトの作成を防ぐことができます。 1か所からアクセスするとアプリをテストするのにも役立ちますが、それ以外の場合は難しくなります。 –

+0

質問を編集して理由の詳細をお知らせください。あなたのコメントの内容は答えになるはずです。 – Gray

関連する問題