Java中Ear、Jar、War文件之间有何不同

JavaEarJarWar文件之间有何不同?
EarJarWar文件之间有何不同?它们分别使用在哪种环境下?
  在文件结构上,三者并没有什么不同,它们都采用zipjar档案文件压缩格式。但是它们的使用目的有所区别:
  Jar文件(扩展名为. Jar)包含Java类的普通库、资源(resources)、辅助文件(auxiliary files)等
  War文件(扩展名为.War)包含全部Web应用程序。在这种情形下,一个Web应用程序被定义为单独的一组文件、类和资源,用户可以对jar文件进行封装,并把它作为小型服务程序(servlet)来访问。
  Ear文件(扩展名为.Ear)包含全部企业应用程序。在这种情形下,一个企业应用程序被定义为多个jar文件、资源、类和Web应用程序的集合。
  每一种文件(.jar, .war, .ear)只能由应用服务器(application servers)、小型服务程序容器(servlet containers)、EJB容器(EJB containers)等进行处理。
以最终客户的角度来看,.jar文件就是一种封装,他们不需要知道.jar文件中有多少个.class文件,每个文件中的功能与作用,同样可以得到他们希望的结果。除jar以外对于J2EE来说还有warear。区别见下表:

 

JAR

WAR

EAR

英文

Java Archive file

  Web Archive file

Enterprise Archive file

包含内容

classproperties文件,是文件封装的最小单元;

ServletJSP页面、JSP标记库、JAR库文件、HTML/XML文档和其他公用资源文件,如图片、音频文件等;

除了包含JARWAR以外,还包括EJB组件

部署文件

application-client.xml

web.xml   

application.xml

级别


  JAR WAR EAR
英文 Java Archive file   Web Archive file  Enterprise Archive file
包含内容 classproperties文件,是文件封装的最小单元; ServletJSP页面、JSP标记库、JAR库文件、HTML/XML文档和其他公用资源文件,如图片、音频文件等; 除了包含JARWAR以外,还包括EJB组件
部署文件 application-client.xml web.xml    application.xml
级别 小 中 
这三种文件都可以看作是java的压缩格式,其实质是实现了不同的封装:
jar--封装类
war--封装web站点
ear--封装ejb
它们的关系具体为:
jar        是java Achieve--java格式压缩的类包,包含内容 classproperties文件,    是文件封装的最小单元 级别:小
war      是file web Achieve--包含ServletJSP页面、JSP标记库、JAR库文件HTML/XML文档和其他公用资源文件,如图片、音频文件等 级别:中
ear       是 file Enterprise Achieve--除了包含JARWAR以外,还包括EJB组件   部署文件 application-client.xml web.xml application.xml    级别:大
一个web组件开发者执行以下的任务来传递一个包含web组件的WAR文件:
编写并编译servlet源代码
编写jsphtml文件
指定web的开发描述符
邦定.class,.jsp,.html和部署描述符到一个WAR文件。
以最终客户的角度来看,.jar文件就是一种封装,他们不需要知道.jar文件中有多少个.class文件,每个文件中的功能与作用,同样可以得到他们希望的结果。除jar以外对于j2ee来说还有warear
ear中可以包含war,jar文件。jar文件可以将ejb包含其中。war可以将web组件包含其中。 
jar表示java的标准档案文件,有一个有趣的双关语:a   jar   of   beans(一罐豆子)
在文件结构上,三者并没有什么不同,它们都采用zipjar档案文件压缩格式。但是它们的使用目的有所区别:
  Jar文件(扩展名为. Jar)包含Java类的普通库、资源(resources)、辅助文件(auxiliary files)等
  War文件(扩展名为.War)包含全部Web应用程序。在这种情形下,一个Web应用程序被定义为单独的一组文件、类和资源,用户可以对jar文件进行封装,并把它作为小型服务程序(servlet)来访问。
  Ear文件(扩展名为.Ear)包含全部企业应用程序。在这种情形下,一个企业应用程序被定义为多个jar文件、资源、类和Web应用程序的集合。
  每一种文件(.jar, .war, .ear)只能由应用服务器(application servers)、小型服务程序容器(servlet containers)、EJB容器(EJB containers)等进行处理。]
所有的包都是用jar打的,只不过目标文件的扩展名不一样。
ear包:企业级应用,通常是EJB打成ear包。 earJ2ee的应用文件的扩展名
Enterprise Application Achiever
是打包了的企业应用程序,里面可包含war(web Application archiever),ejb
ear包:企业级应用,通常是EJB打成ear包。
war:是做好一个web应用后,通常是网站,打成包部署到容器中。
jar包:通常是开发时要引用通用类,打成包便于存放管理。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值