Servlets are modules that extend request/response-oriented servers, such
as Java-enabled web servers. For example, a servlet might be responsible for taking
data in an HTML order-entry form and applying the business logic used to update
a company's order database. Servlets are to servers what applets are to browsers.
Unlike applets, however, servlets have no graphical user interface. Servlets can
be embedded in many different servers because the servlet API, which you use to
write servlets, assumes nothing about the server's environment or protocol. Servlets
have become most widely used within HTTP servers; many web servers support Java
Servlets instead of CGI Scripts.
Servlets are an effective replacement
for CGI scripts. They provide a way to generate dynamic documents that is both
easier to write and faster to run. Servlets also address the problem of doing
server-side programming with platform-specific APIs: they are developed with the
Java Servlet API, a standard Java extension.
So use servlets to handle HTTP
client requests. For example, have servlets process data POSTed over HTTPS using
an HTML form, including purchase order or credit card data. A servlet like this
could be part of an order-entry and processing system, working with product and
inventory databases, and perhaps an on-line payment system.
Uses for Servlets
Here are a few more of the many applications for servlets:
collaboration between people. A servlet can handle multiple requests concurrently,
and can synchronize requests. This allows servlets to support systems such as
" Forwarding requests. Servlets can forward
requests to other servers and servlets. Thus servlets can be used to balance load
among several servers that mirror the same content, and to partition a single
logical service over several servers, according to task type or organizational
Architecture of the Servlet Package
package provides interfaces and classes for writing servlets. The architecture
of the package is described below.
The central abstraction in the Servlet API is the Servlet
interface. All servlets implement this interface, either directly or, more commonly,
by extending a class that implements it such as HttpServlet
Servlet interface declares, but does not implement, methods that manage the servlet
and its communications with clients. Servlet writers provide some or all of these
methods when developing a servlet.
When a servlet accepts a call from a client, it receives two
" A ServletRequest , which encapsulates the communication from
the client to the server.
" A ServletResponse , which encapsulates
the communication from the servlet back to the client.
ServletResponse are interfaces defined by the javax.servlet package.
Servlet Request Interface
The ServletRequest interface allows the servlet
" Information such as the names of the parameters passed
in by the client, the protocol (scheme) being used by the client, and the names
of the remote host that made the request and the server that received it.
" The input stream, ServletInputStream . Servlets use the input stream to
get data from clients that use application protocols such as the HTTP POST and
Interfaces that extend ServletRequest interface allow the servlet
to retrieve more protocol-specific data. For example, the HttpServletRequest interface
contains methods for accessing HTTP-specific header information.
Servlet Response Interface
The ServletResponse interface gives the servlet
methods for replying to the client. It:
" Allows the servlet to set
the content length and MIME type of the reply.
" Provides an output
stream, ServletOutputStream , and a Writer through which the servlet can send
the reply data.
You may also like this : Motes, Modular Computing, MiniDisc system, Migration From GSM Network To GPRS, M-Commerce, C# , IP Telephony, RPR, Broad Band Over Power Line, Rapid Prototyping , Dashboard , Code Division Duplexing , Delay Tolerant Networking, EDGE , Holographic Data Storage , Integer Fast Fourier Transform , NRAM , Orthogonal Frequency Division Multiplplexing , Ovonic Unified Memory , Pervasive Computing , RAID , Real Time Systems with Linux/RTAI , Real-Time Obstacle Avoidance , Symbian OS , Teleportation , Turbo Codes , Utility Fog , Cluster Computing , Wireless Application Protocol , Light Tree, Smart Pixel Arrays , Project Oxygen , Wearable Bio-Sensors , Mobile Virtual Reality Service , QoS in Cellular Networks Based on MPT , Wireless Fidelity , Voice morphing , Radio Frequency Light Sources , Speed Detection of moving vehicle using speed cameras , Optical Packet Switching Network , Storage Area Networks , Smart Note Taker , Crusoe Processor, Optical Satellite Communication , Optical packet switch architectures, Optical Switching , FRAM , Virtual Private Network , Clockless Chip , Layer 3 Switching , Computer Seminars Reports and PPT