5

Web サービスと sqlite データベースがあります。この場合、Web サービスを使用してデータベース内にデータを保存します。ここで、同期機能を次のように含めたいと考えています。その時点でアプリケーションが起動するたびに、データベースは Web サービスを介してテーブルのデータのロードを開始します。

しばらくして、Web サービスを更新すると、それに応じてデータベースが更新されます。私の質問は、この更新で従わなければならないベスト プラクティスは何かということです。DB全体をクリアして、すべての行を再度追加する必要があります(これには時間がかかることはわかっています)が、そうでない場合、データベースはWebサービスから特定のデータのみをどのように追加しますか?

ありがとうございました。

4

4 に答える 4

3

私があなたに提案するのは:

  1. アプリの起動時に、すべての Web サービス コンテンツを最初に db に保存します。
  2. db のみから画面にコンテンツを表示します。
  3. データを更新またはリコールする必要がある場合は、データベースを更新するだけです。

したがって、すべての新しいデータが常にデータベースに見つかります。

于 2013-07-29T05:42:10.767 に答える
1

RestKitの優れた Core Data サポートを使用することをお勧めします。

を使用RKEntityMappingすると、リモート オブジェクトを JSON または XML からデータベース内の Core Data エンティティに直接マッピングできます。

RestKit は自動的にデータベースを維持し、Web サービスから適切にエントリを挿入および更新します。(私の経験では、Web サービスの RESTful 度によっては、オブジェクトの削除に少し余分な作業が必要になることがわかりました)。

RestKit には間違いなく学習曲線が付属していますが、それだけの価値はあります。数回展開したことは、独自の SQLite/Web サービス同期コードを手動で記述するよりもはるかに優れたソリューションであることは間違いありません。

于 2013-08-07T12:21:36.533 に答える
0

まず、すべての Web サービス コンテンツを SQLITE に設定し、表示したいものを SQLITE から取得し、その sqlite テーブルに対して操作を実行します。これがすべて完了したら、必要な変更が Web サービスに保存されます。

この道をたどってください。

于 2013-08-07T12:07:58.883 に答える