サーブレットからAndroidアプリケーションにアレイリストを送信するにはどうすればよいですか?servletからAndroidアプリケーションにarraylistを送信
答えて
これまでの標準フォーマットでString
に変換し、それを解析して既存のライブラリを使用して構築する必要があります。たとえば、JSON、XML、CSVなどがあります。これらはすべて、標準化された交換可能な文字列形式であり、多数のプログラミング言語に多くの解析/構築ライブラリが存在します。
AndroidにはJSONパーサーが組み込まれています(the org.json
package)。それはに組み込まれたXMLパーサを持っています。組み込みのCSVライブラリがあるかどうかはわかりませんが、存在しないようです。 Java EEは、JAXBの素晴らしい組み込みXMLパーサーのフレーバーを持っていますが、組み込みのJSONパーサーはありません。 JAX-RS実装(Jersey、RESTeasyなど)のみがJSONパーサーを提供します。サーブレットをJAX-RS Webサービスに変更することができれば、最小限の労力でXMLとJSONの両方を返すことができるというメリットがあります。 Servlet vs RESTfulも参照してください。
どのフォーマットを選択するかは、機能要件によって異なります。例えば、サーブレットは他のサービスのために再利用されるはずですか?ターゲットクライアントとは何ですか? Etcetera。
JSON形式は通常、XMLよりも簡潔で普及しているので、JSON形式でデータを転送するキックオフの例を示します。実際にやりたいことを前提としますJAX-RSではなくプレーンなバニラ・サーブレットを使用しています。この例では、GsonなどのJSONライブラリを/WEB-INF/lib
にダウンロードしてドロップするだけで、JavaオブジェクトをサーブレットのJSONに変換できます。
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
List<String> list = new ArrayList<String>();
list.add("item1");
list.add("item2");
list.add("item3");
String json = new Gson().toJson(list);
response.setContentType("application/json");
response.setCharacterEncoding("UTF-8");
response.getWriter().write(json);
}
これは、次のようなJSON形式でList
を構築し、返します。
["item1","item2","item3"]
次のようにこれは、Androidでorg.json
APIによってターン解析可能である:
String jsonString = getServletResponseAsStringSomehow(); // HttpClient?
JSONArray jsonArray = new JSONArray(jsonString);
List<String> list = new ArrayList<String>();
for (int i = 0; i < jsonArray.length(); i++) {
list.add(jsonArray.getString(i));
}
// Now you can use `list`.
プル型モデルの場合、アンドロイドアプリからサーブレットエンドポイントにHTTP GETリクエストを送信できます.HTTPレスポンスは、配列リストから作成されたJSONオブジェクトです。
はどんな例がありますサーブレットのarrayListをreutrnするためのコード? –
- 1. androidアプリケーションからJavaServerにcurrentPositionを送信
- 2. AndroidサービスからWebサービス経由でリモートデータベースにArrayListを送信
- 3. Androidアプリケーションから電子メールを送信
- 4. Android ArrayListの内容をPHPに送信
- 5. Arraylistにデータを送信Android JSOUP
- 6. Android-NDKアプリケーションからのインテントの送信
- 7. ボタンをクリックすると、Arraylistの特定のオブジェクトをJSPからServletに送信します。
- 8. ArrayList内でArrayListを送信
- 9. web1/servletからweb2/servletにリクエストを転送する方法は?
- 10. AndroidアプリケーションからAzure IoT Hubデバイスにメッセージを送信
- 11. JavaアプリケーションからBluetooth経由でAndroidアプリケーションにオブジェクトを送信しますか?
- 12. Android:アプリケーションから送信されたデータをキャプチャしますか?
- 13. サーバーからOSXアプリケーションにデータを送信
- 14. WPFアプリケーションからユーザーコントロールにイベントを送信
- 15. アプリケーションからfacebookユーザーにメッセージを送信
- 16. アプリケーションからRealmオブジェクトサーバーにデータを送信
- 17. PHPからjavaアプリケーションにデータを送信
- 18. androidアプリケーションからソケットを介して小さなcmdsを送信
- 19. AndroidからコードからSMSを送信
- 20. unityからjava androidにデータを送信
- 21. XAMPP(MYSQL)からandroidにデータを送信
- 22. datetimeフォームをAndroidからMySQLに送信
- 23. データベースから取得したarraylistにメールを送信
- 24. クライアントからサーバーにArrayListを送信する方法
- 25. jspからSpringコントローラにArrayListオブジェクトを送信
- 26. servletからclientへの返信方法
- 27. Androidアプリケーションからサーバー側への写真の送信
- 28. スウィフトOSXアプリケーションからメールを送信
- 29. アプリケーション内からSQLite dbファイルを送信
- 30. アンドロイドのMyアプリケーションからMMSを送信
ありがとう!!!!!!初めての使用json –
ようこそ。 JSON形式の詳細については、http://json.orgを参照してください。 – BalusC
これは超古かったことを認識していますが、とても役に立ちましたので、私はまだ書いていると思っていました。私は上のコード例でサーブレットをコンパイルしようとしていますが、 "エラー:シンボル|文字列json =新しいGson()など"(Gsonを指す矢印)を見つけることができません。どのライブラリを含めるべきかわからなかったので、gson-2.2.3.jarとgson-2.2.3-sources.jarの両方を使用しています 何が問題なのでしょうか? –