Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Spring 什么时候需要在容器中运行Java应用程序?_Spring_Jakarta Ee_Containers - Fatal编程技术网

Spring 什么时候需要在容器中运行Java应用程序?

Spring 什么时候需要在容器中运行Java应用程序?,spring,jakarta-ee,containers,Spring,Jakarta Ee,Containers,最近我开始学习JavaEE和相关技术,有一些概念让我感到困惑。我在某个地方读到,无论何时构建JavaEE应用程序,都必须使用容器 目前,我正在学习Spring框架,并试图用它来构建一个小型应用程序,以获得实践经验。现在,我不确定是否必须使用容器(比如Tomcat),或者是否需要容器取决于我正在构建的应用程序 如果它取决于您正在构建的应用程序,那么哪些因素有助于决定是否应使用容器?如果您的应用程序正在使用servlet,您将需要一个容器来处理请求。Tomcat是一个非常流行的选择 我将预测您的下一

最近我开始学习JavaEE和相关技术,有一些概念让我感到困惑。我在某个地方读到,无论何时构建JavaEE应用程序,都必须使用容器

目前,我正在学习Spring框架,并试图用它来构建一个小型应用程序,以获得实践经验。现在,我不确定是否必须使用容器(比如Tomcat),或者是否需要容器取决于我正在构建的应用程序


如果它取决于您正在构建的应用程序,那么哪些因素有助于决定是否应使用容器?

如果您的应用程序正在使用servlet,您将需要一个容器来处理请求。Tomcat是一个非常流行的选择


我将预测您的下一个主题,即“应用程序服务器”与“容器”的对比。

puuhh,这是一个非常大的问题,没有简单的答案。但至少我会尽力解释我自己的观点:

什么是集装箱? 容器为您提供功能。这样的功能可以用来处理web请求并将它们分派给servlet——在这种情况下,我们称它们为servlet容器(例如Tomcat或Jetty)

但容器也可以提供其他功能,例如,它们可以提供用户身份验证、日志记录或到数据库的连接。大多数容器(例如Tomcat)都做了很多这样的事情(例如Tomcat做了我提到的所有事情)。有些容器比其他容器做得更多,例如JBoss可以比Tomcat做得更多

权衡 然而,有一个权衡:如果您使用一个简单的容器(比如Tomcat),那么您需要自己或使用其他框架(比如Spring)来做很多事情。但是,如果您使用功能强大的容器,您必须非常了解该容器,并且您的应用程序迟早会依赖于该具体容器的可能性很高

重点是,使用容器不是强制性的。这是一个决定。有些人会支持它,有些人会反对它。但是,根据您阅读的书籍,这个决定已经做出(例如,J2EE需要一个J2EE容器,这就是它的工作原理)

趋势(IMHO) 几年前的趋势是使用大而强大的(J2EE)容器,这些容器提供尽可能多的功能。今天的趋势是使用更小、更轻的解决方案。如今,大多数开发人员更喜欢使用Tomcat服务器而不是JBoss服务器

没有容器的框架 虽然J2EE需要一个容器,但还有其他框架/技术支持在没有任何外部容器的情况下开发web应用程序。这些框架是或不存在的


如果您不熟悉容器和Spring,请注意不要混淆。您将使用Spring开发的大多数应用程序都是web应用程序,它们将被部署到servlet容器中。这是很常见的。但春天并不依赖于此。您也可以在没有此类容器的情况下使用Spring,例如开发桌面应用程序。但是,如果您想开发web应用程序,Java方法是使用servlet容器。

有两个容器。一个是运行Web应用程序的Web容器(IIS、Apache),另一个是运行企业应用程序的“应用程序容器”

Web应用程序=使用HTML、XML、CSS和JSP开发的应用程序

Enterprise Applications=开发的应用程序除了使用HTML和XML外,还使用JAVA、J2E和Serverlet。

如果应用程序使用servlet,则需要一个容器来处理请求。Tomcat是一个非常流行的选择。我将预测你的下一个主题:基本上:当你想使用特定容器提供的功能时……我很乐意删除这个问题,但如果投反对票的人能告诉我原因就好了。不说出原因可能会导致我方反复提出错误问题,因为我不知道原因。谢谢@bphilipnyc的回答。我给我指出了正确的方向。我会朝那一边挖掘更多,以澄清我的理解。@Siddharth当然,但你期待什么呢?:)您可以完全独立完成所有工作,例如服务bean实例池或事务管理。如果您想让EJB容器为您做这件事,当然您必须使用它。但是您可以自己编写所有代码,或者使用一些其他框架提供的完全不同的方法等等。。。那么,你的问题的答案是,将军,伊姆霍