As a UI devloper and someone with very limited Java knowledge, how do I understand what exactly is servlet container in simple terms ?
I have heard Weblogic, JBoss, etc are servlet containers, but not sure what that means exactly. Does it mean any middleware 开发者_Python百科technology ?
Could you please help me.
A servlet is a class that you will use to receive HTTP requests as methods and reply back with stuff (usually HTML).
A servlet container is a server program which provides everything else; the opening of the socket, the transformation framework to turn HTTP into Java API calls, and a number of interfaces which allow you to plug in your servlet code.
If it were an electrical outlet, the servlet container would be the socket in the wall, and the servlet would be the plug and cord that attaches to the socket; but, Java used a 'container' analogy. The servlet container is the "bucket" you put your servlet stuff into.
A servlet container is an application server that implements some version of the Java Servlet Specification.
In a nutshell, the servlet spec defines a programming model that allows a developer to write components, for example servlets, that process requests (almost always HTTP requests). Those components can then be declared to the container and it handles many of the tedious tasks involved with wiring up and managing those components such that they can process those requests.
WebLogic, JBOSS, and other Java EE app servers have servlet containers, plus more: EJBs, naming and directory service, JMS, etc.
Servlets are HTTP listeners that run inside a servlet container. The servlet can be mapped to response to HTTP GET and POST requests to a given URL of your choice. The container manages the lifecycle and pooling of the servlets.
The Java EE architecture is a component oriented system with an articulated container, component model, and a managed life-cycle and mediated inter-component communication.
The Java EE web-container defines the components of this tier (e.g. {Servlet, Filter}), and the contractual interface between the components and the web-container (e.g. ServletContext).
(If coming from .NET, this is effectively the [same conceptual paradigm as the] Component, Container and ISite is the Java EE XML declarative mappings.) [edit]
Servlet containers are programs that have pre-defined rules and intelligence to manage requests and responses. These programs validate the requests and responses to ensure they meet the Java servlet specifications. The application server is not just about servlet containers, it also contains EJB containers.
精彩评论