0

私はAndroidアプリに取り組んでいます。アプリはデータを JSON 文字列 (大学名と学生リスト) として取得し、データに従ってアプリを操作します。

より良いアプローチは何ですか?

  • 新しいオブジェクトを作成し、JSON 文字列を解析してオブジェクトを処理するか、または
  • JSON 文字列を保持し、文字列から情報を取得する必要があるときはいつでも JSONObject を使用します
  • それとも他の方法ですか?

新しいオブジェクトを使用している場合、オブジェクトをアプリ内の他のアクティビティと転送 (または共有) するにはどうすればよいですか? 文字列に使用できることはわかっていますputextra()

4

4 に答える 4

1

オブジェクトを使用します。Jackson ライブラリ
を使用することをお勧めします。これは、非常に高速で簡単に統合できるためです。 ここでコード例を見つけることができます: http://www.mkyong.com/java/how-to-convert-java-object-to-from-json-jackson/

PS : このアプローチのライブラリは Jackson だけではありません > Jackson Vs. Gソン

于 2013-02-05T13:15:48.800 に答える
0

私はほとんどの場合、JsonObjectを特定のオブジェクトに解析します(例:Universityクラス)。

これを行うことの利点の1つは、コレクションにうまく入れることができることです。例:HashMaps、Setまたは単にリスト。JsonObjectとして扱う場合、簡単に操作することはできません。

ObjectがComparableを継承し、equals / toString / hashCodeを定義できる場合は、並べ替えなどを行うことができます。

他にも多くのメリットがありますが、実際のデータ構造でデータを保持することで最大のメリットが得られると思います。

于 2013-02-05T13:17:22.023 に答える
0

オブジェクトも使用することをお勧めします。

Gson ライブラリを使用して、json 文字列とオブジェクトの間の変換を行うことができます。とても使いやすいです。http://code.google.com/p/google-gson/

他のアクティビティ間でデータを転送するには、オブジェクトにSerializableインターフェイスを実装させることができます。このようにして、 を使用し.putExtra()て転送することができます。

于 2013-02-05T13:28:45.343 に答える
0

文字列を解析する (またはライブラリを使用してこれを行う) ことと、オブジェクトを埋めることをお勧めします。このようにして、モデル オブジェクトはデータと他のオブジェクトとの共有方法を制御し、内部データ構造を使用して使用を最適化できます。JSON 文字列に固執すると、データを引き出すために何度も解析することになります。

ただし、アクティビティ間でオブジェクト/文字列を共有することを決定しても、データをモデル化する方法の決定には影響しません。いずれにせよ、アクティビティ間でそれを渡すことになる可能性があります。

于 2013-02-05T13:16:59.403 に答える