JSON文字列を使用して/テストするGETリクエストで応答する単純なJava Webアプリケーションを作成しようとしています。JSONで応答するJava Webサーバー
私の環境はJava、Intellij、Tomcat 8.5.4です。
これまでのところ、私はすでに3つのクラスがあります。
- CSV - CSVのためのJSONへの変換
- クリーンアップ - GETに応答クラス - 実際にデータ
- サーブレットに変換するクラスを要求
私のサーブレットクラス:
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
@WebServlet(name = "Servlet")
public class Servlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
System.out.println("GET request received");
CleanUp cleanup = new CleanUp();
cleanup.cleanupData();
// Logic needed here to send the data to client
}
}
クリーンアップクラスが現在のようにコンソールに結果のデータを送信します。
ObjectMapper mapper = new ObjectMapper();
mapper.enable(SerializationFeature.INDENT_OUTPUT);
mapper.writeValue(System.out, list);
私は私が欲しいjavax.http.servletの一部として行うことができるか、別の依存関係が必要な場合でも、必ずfarily新しくはないのですか?
あなたは応答が必要なGETリクエストを受け取りました。クライアントに返信するコンテンツタイプを決定する必要があります。データはResponse.getOutputStream()に書き込むことができます。そのテキストまたはHTMLの場合、他のライブラリは必要ありません。 –
そのJSONなので、私はプレーンテキストとして扱うことができますか? doPostでは、Response.getOutPutStream(mapper.writeValue(System.out、list))を追加するだけで簡単です。 ? –
はい、JSONオブジェクトをStringに変換すると、レスポンスに書き込むことができます。投稿された内容を気にしない場合、doPost()はdoGet()を呼び出すことができます。 –