La clase ServletInputStream es un componente del paquete Java javax.servlet. Es una clase abstracta que proporciona un flujo de entrada para leer datos binarios de una solicitud de cliente, incluido un método readLine eficiente para leer datos una línea a la vez.
Sintaxis:
public abstract class ServletInputStream extends InputStream
Constructor
ServletInputStream() : Dado que ServletInputStream es una clase abstracta, no se puede inicializar.
Nota: el método ServletRequest.getInputStream() se usa para obtener la referencia de ServletInputStream.
Métodos
ServletInputStream contiene solo un método concreto llamado readLine.
readLine(byte [ ] b, int offset, int len):
- Es parte de la clase ServletInputStream.
- Se utiliza para leer el flujo de entrada.
- Devolverá un número de bytes leídos o -1.
- Podría lanzar IOException si ocurre una excepción de entrada o salida.
Firma del método:
public int readLine(byte[] b, int offset,int len) throws IOException.
Parámetros del método: el método readLine() tiene tres parámetros que son byte, int y tipo int.
Tipo de devolución del método: el método readLine() tiene un tipo de devolución int y devolverá una cantidad de bytes leídos o -1 si se llega al final de la secuencia.
Métodos abstractos de ServletInputStream
S. No. |
Método |
Descripción |
Tipo de retorno |
---|---|---|---|
1. | Está terminado() | El método isFinished() devolverá verdadero si se han leído todos los datos de la secuencia; de lo contrario, devolverá falso. | booleano abstracto |
2. | está listo() | El método isReady() devolverá verdadero si los datos de la transmisión se pueden leer sin bloquear; de lo contrario, devolverá falso. | booleano abstracto |
3. | setReadListener(ReadListener readListener) |
El método setReadListener se usa para instruir al ServletInputStream para invocar el ReadListener provisto cuando es posible leer. |
vacío abstracto |
Interfaces implementadas por ServletInputStream
- java.io.Cerrable .
- java.lang.AutoCloseable.
Programa Java para crear un servlet y comprobar si se pueden leer los datos del flujo:
Java
import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class GeeksForGeeks extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) { try { ServletInputStream servletInputStream = request.getInpuStream(); System.out.println( "Data of stream can be read : " + servletInputStream.isReady()); } catch (Exception e) { System.out.println(e.getMessage()); } } public void doPost(HttpServletRequest request, HttpServletResponse response) { doGet(); } }
Producción:
true
Nota : el código anterior no se ejecutará en el IDE en línea, ya que es un código del lado del servidor.
Publicación traducida automáticamente
Artículo escrito por harshsethi2000 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA