Servlet container implements web component contract of Java EE specification, specifying a runtime environment for web components that includes security, concurrency, lifecycle management, transaction, deployment, and other services.
Apache tomcat is one open source example.
Object satisfying the contract given by javax.servlet.ServletContext
, is used per each web application
Spring IOC container also implement web component contract of Java EE specification.
Object satisfying the contract given by org.springframework.context.ApplicationContext
, is used per each web application
Why Spring IOC container is preferred over servlet container?