Spring Boot 打包

在J2EE应用程序中,模块打包为 JAR,WAR, EAR 。 J2EE中使用的是压缩文件格式。 J2EE定义了三种类型的档案:

  • War
  • JAR
  • EAR

Spring Boot Packaging

 

 

WAR

WAR 代表 Web存档。。WAR文件代表Web应用程序。 Web模块包含servlet类,JSP文件,HTML文件,JavaScript等,并打包为扩展名为。 war 的JAR文件。它包含一个名为 WEB-INF 的特殊目录。

WAR是一个模块,可加载到Java Application Server的Web容器中。 Java Application Server具有 两个容器: Web容器 EJB容器

Web容器托管基于Servlet API和JSP的Web应用程序。 Web容器要求将Web模块打包为WAR文件。这是WAR文件专用的JAR文件,在 WEB-INF 文件夹中包含 web.xmlv 文件。

EJB容器托管基于EJB API的Enterprise Java Bean。它要求将EJB模块打包为JAR文件。它在 META-INF 文件夹中包含一个 ejb-jar.xml 文件。

WAR文件的优点是可以轻松部署。在Web服务器环境中的客户端计算机上。要执行WAR文件,需要Web服务器或Web容器。例如,Tomcat,Weblogic和Websphere。

 

JAR

JAR 代表 Java存档。包含Bean文件(类文件),清单和EJB部署描述符(XML文件)的EJB(企业Java Beans)模块打包为JAR文件,扩展名为。 jar。软件开发人员可以分发Java类和各种元数据。

换句话说,一个封装一个或多个Java类,清单和描述符的文件称为JAR文件。它是存档的最低级别。它在J2EE中用于包装EJB和客户端Java应用程序。

 

EAR

EAR 代表 Enterprise Archive。EAR文件代表企业应用程序。上面两个文件打包为扩展名为。 ear 的JAR文件。它已部署到应用服务器中。它可以包含多个EJB模块(JAR)和Web模块(WAR)。这是一个特殊的JAR,它在 META-INF 文件夹中包含一个 application.xml 文件。

 SpringBoot自动配置根据我们添加的jar依赖项自动配置SpringBoot应用程序。例如,如果类路径中存在H2数据库Jar,而我们尚未手动配置任何与数据库相关的bean,则Spring ...