Saltar al contenido

¿Cómo se devuelve un objeto JSON de un servlet Java?

Solución:

Escribe el objeto JSON en el flujo de salida del objeto de respuesta.

También debe establecer el tipo de contenido de la siguiente manera, que especificará lo que está devolviendo:

response.setContentType("application/json");
// Get the printwriter object from response to write the required json object to the output stream      
PrintWriter out = response.getWriter();
// Assuming your json object is **jsonObject**, perform the following, it will return your json object  
out.print(jsonObject);
out.flush();

Primero convierta el objeto JSON a String. Luego, escríbalo al escritor de respuestas junto con el tipo de contenido de application/json y codificación de caracteres de UTF-8.

Aquí hay un ejemplo asumiendo que está usando Google Gson para convertir un objeto Java en una cadena JSON:

protected void doXxx(HttpServletRequest request, HttpServletResponse response) {
    // ...

    String json = new Gson().toJson(someObject);
    response.setContentType("application/json");
    response.setCharacterEncoding("UTF-8");
    response.getWriter().write(json);
}

Eso es todo.

Ver también:

  • ¿Cómo usar Servlets y Ajax?
  • ¿Cuál es el tipo de contenido JSON correcto?

Hago exactamente lo que sugieres (devuelve un String).

Sin embargo, podría considerar configurar el tipo MIME para indicar que está devolviendo JSON (de acuerdo con esta otra publicación de stackoverflow, es “application / json”).

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *