Servlets are server-side components that provide a powerful mechanism for developing server-side programs. They offer component-based, platform-independent methods for building web-based applications, without the performance limitations of CGI programs. Unlike proprietary server extension mechanisms (such as the Netscape Server API or Apache modules), servlets are server- and platform-independent.
Benefits of Using Servlets
This flexibility allows developers to select a "best of breed" strategy for their servers, platforms, and tools. By using servlets, web developers can create fast and efficient server-side applications that can run on any servlet-enabled web server. Since servlets run entirely inside the Java Virtual Machine (JVM), they are not dependent on browser compatibility.
Servlets can access the entire family of Java APIs, including the JDBC API for accessing enterprise databases. Additionally, servlets can leverage a library of HTTP-specific calls and enjoy the benefits of the mature Java language, such as portability, performance, reusability, and crash protection. Today, servlets are a popular choice for building interactive web applications.
Servlet Containers
Third-party servlet containers are available for various web servers, including Apache Web Server and Microsoft IIS. Servlet containers are typically components of web and application servers, such as:
- BEA WebLogic Application Server
- IBM WebSphere
- Sun Java System Web Server
- Sun Java System Application Server
Servlet Protocols and Packages
Servlets are not designed for specific protocols, although they are most commonly used with HTTP. They utilize the classes in the Java packages javax.servlet
and javax.servlet.http
. Servlets provide a way to create sophisticated server-side extensions by following a standard framework and using the highly portable Java language.
Typical Uses of HTTP Servlets
HTTP servlets are typically used to:
- Provide dynamic content, such as retrieving the results of a database query and returning them to the client.
- Process and/or store data submitted via HTML forms.
- Manage information about the state of a stateless HTTP session. For example, an online shopping cart manages requests for multiple concurrent customers.
Comments
Post a Comment