- java.lang.Object
-
- java.io.InputStream
-
- javax.servlet.ServletInputStream
-
- All Implemented Interfaces:
- Closeable, AutoCloseable
public abstract class ServletInputStream extends InputStream
Provides an input stream for reading binary data from a client request, including an efficientreadLine
method for reading data one line at a time. With some protocols, such as HTTP POST and PUT, aServletInputStream
object can be used to read data sent from the client.A
ServletInputStream
object is normally retrieved via theServletRequest.getInputStream()
method.This is an abstract class that a servlet container implements. Subclasses of this class must implement the
java.io.InputStream.read()
method.- Author:
- Various
- See Also:
ServletRequest
-
-
Constructor Summary
Constructors Modifier Constructor and Description protected
ServletInputStream()
Does nothing, because this is an abstract class.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method and Description abstract boolean
isFinished()
Returns true when all the data from the stream has been read else it returns false.abstract boolean
isReady()
Returns true if data can be read without blocking else returns false.int
readLine(byte[] b, int off, int len)
Reads the input stream, one line at a time.abstract void
setReadListener(ReadListener readListener)
Instructs theServletInputStream
to invoke the providedReadListener
when it is possible to read
-
-
-
Constructor Detail
-
ServletInputStream
protected ServletInputStream()
Does nothing, because this is an abstract class.
-
-
Method Detail
-
readLine
public int readLine(byte[] b, int off, int len) throws IOException
Reads the input stream, one line at a time. Starting at an offset, reads bytes into an array, until it reads a certain number of bytes or reaches a newline character, which it reads into the array as well.This method returns -1 if it reaches the end of the input stream before reading the maximum number of bytes.
- Parameters:
b
- an array of bytes into which data is readoff
- an integer specifying the character at which this method begins readinglen
- an integer specifying the maximum number of bytes to read- Returns:
- an integer specifying the actual number of bytes read, or -1 if the end of the stream is reached
- Throws:
IOException
- if an input or output exception has occurred
-
isFinished
public abstract boolean isFinished()
Returns true when all the data from the stream has been read else it returns false.- Returns:
true
when all data for this particular request has been read, otherwise returnsfalse
.- Since:
- Servlet 3.1
-
isReady
public abstract boolean isReady()
Returns true if data can be read without blocking else returns false.- Returns:
true
if data can be obtained without blocking, otherwise returnsfalse
.- Since:
- Servlet 3.1
-
setReadListener
public abstract void setReadListener(ReadListener readListener)
Instructs theServletInputStream
to invoke the providedReadListener
when it is possible to read- Parameters:
readListener
- theReadListener
that should be notified when it's possible to read.- Throws:
IllegalStateException
- if one of the following conditions is true- the associated request is neither upgraded nor the async started
- setReadListener is called more than once within the scope of the same request.
NullPointerException
- if readListener is null- Since:
- Servlet 3.1
-
-
Deutsche Übersetzung
Sie haben gebeten, diese Seite auf Deutsch zu besuchen. Momentan ist nur die Oberfläche übersetzt, aber noch nicht der gesamte Inhalt.Wenn Sie mir bei Übersetzungen helfen wollen, ist Ihr Beitrag willkommen. Alles, was Sie tun müssen, ist, sich auf der Website zu registrieren und mir eine Nachricht zu schicken, in der Sie gebeten werden, Sie der Gruppe der Übersetzer hinzuzufügen, die Ihnen die Möglichkeit gibt, die gewünschten Seiten zu übersetzen. Ein Link am Ende jeder übersetzten Seite zeigt an, dass Sie der Übersetzer sind und einen Link zu Ihrem Profil haben.
Vielen Dank im Voraus.
Dokument erstellt 11/06/2005, zuletzt geändert 18/08/2025
Quelle des gedruckten Dokuments:https://www.gaudry.be/de/java-api-javaee-rf-javax/servlet/servletinputstream.html
Die Infobro ist eine persönliche Seite, deren Inhalt in meiner alleinigen Verantwortung liegt. Der Text ist unter der CreativeCommons-Lizenz (BY-NC-SA) verfügbar. Weitere Informationen auf die Nutzungsbedingungen und dem Autor.
Referenzen
Diese Verweise und Links verweisen auf Dokumente, die während des Schreibens dieser Seite konsultiert wurden, oder die zusätzliche Informationen liefern können, aber die Autoren dieser Quellen können nicht für den Inhalt dieser Seite verantwortlich gemacht werden.
Der Autor dieser Website ist allein dafür verantwortlich, wie die verschiedenen Konzepte und Freiheiten, die mit den Nachschlagewerken gemacht werden, hier dargestellt werden. Denken Sie daran, dass Sie mehrere Quellinformationen austauschen müssen, um das Risiko von Fehlern zu reduzieren.