war包和jar包

1.转自:http://www.blogjava.net/athrunwang/archive/2011/11/18/364191.html


-------------------------------------------------------------------------------------------------------


经常听开发说war,jar,car,这些是个什么东东呢?


.jar :
Java archive;
包含:class、properties文件,是文件封装的最小单元;
部署文件:application-client.xml ;
级别:小;


.war :
Web Archive;
包含: Servlet、JSP页面、JSP标记库、JAR库文件、HTML/XML文档和其他公用资源文件,如图片、音频文件等;
部署文件: web.xml;
级别:中;
war包生成:
a.用eclipse等IDE,可以再项目上右击选择“导出”,即可;
b.手工制作:执行jar -cvf 将要生成的包名.war 要压缩的目录名
war包其实就是经过zip压缩的文件,用winrar压缩成zip格式,修改扩展名为war即可。




.ear :
Enterprise Archive;
包含:除了包含JAR、WAR以外,还包括EJB组件;
部署文件:application.xml;
级别:大;


以最终客户的角度来看,.jar文件就是一种封装,他们不需要知道.jar文件中有多少个.class文件,每个文件中的功能与作用,同样可以得到他们希望的结果。
war包:是做好一个web应用后,通常是网站,打成包部署到容器中。
jar包:通常是开发时要引用通用类,打成包便于存放管理。
ear包:企业级应用,通常是EJB打成ear包。
所有的包都是用jar打的,只不过目标文件的扩展名不一样


jar--封装类
war--封装web站点
ear--封装ejb


一个web组件开发者执行以下的任务来传递一个包含web组件的WAR文件:
| 编写并编译servlet源代码
| 编写jsp、html文件
| 指定web的开发描述符
| 邦定.class,.jsp,.html和部署描述符到一个WAR文件。


war包可以放在webapps或者work目录下都可以,随着tomcat的启动,它可以自动被解压.
或者通过tomcat的管理页面,也可以发布war包,发布实际上就是把war包复制到webapps目录下. 




最后关于war、jar包的打包方法,命令行方式和使用 jbuilder或者eclipse,点这里http://www.iteye.com/topic/254141


2.转自:jar包和war包区别


jar包和war包的区别: 
  
jar包就是别人已经写好的一些类,然后将这些类进行打包,你可以将这些jar包引入你的项目中,然后就可以直接使用这些jar包中的类和属性了,这些jar包一般都会放在lib目录下。




war是一个web模块,其中需要包括WEB-INF,是可以直接运行的WEB模块。


而jar一般只是包括一些class文件,在声明了Main_class之后是可以用Java命令运行的。 




它们都是压缩的包,拿Tomcat来说,将war文件包放置它的\webapps\目录下,启动Tomcat,这个包可以自动进行解压,也就是你的web目录,相当于发布了。   


war包:是做好一个web应用后,通常是网站,打成包部署到容器中。


 jar包:通常是开发时要引用通用类,打成包便于存放管理。 


ear包:企业级应用,通常是EJB打成ear包。 


所有的包都是用jar打的,只不过目标文件的扩展名不一样。 




WAR是Sun提出的一种Web应用程序格式,与JAR类似,也是许多文件的一个压缩包。


这个包中的文件按一定目录结构来组织:


通常其根目录下包含有Html和Jsp文件或者包含这两种文件的目录,另外还会有一个WEB-INF目录,这个目录很重要。


通常在WEB-INF目录下有一个web.xml文件和一个classes目录,web.xml是这个应用的配置文件,而classes目录下则包含编译好的Servlet类和Jsp或Servlet所依赖的其它类(如JavaBean)。通常这些所依赖的类也可以打包成JAR放到WEB-INF下的lib目录下,当然也可以放到系统的CLASSPATH中,但那样移植和管理起来不方便。
无需数据库 本资源含界面预览 本系统没有数据库,您可将目前网络上的任意网站的接口瞬间变成您的数据源,取数据超 easy ------------------------------------------------ -----------------如何部署------------------------- ------------------------------------------------ 下载压缩,将压缩中的 yijavaBlog-1.0.0.war 解压缩到 Tomcat 的 webapps/ROOT 即可访问浏览 ------------------------------------------------ -----------------接口配置的例子------------------- ------------------------------------------------ { name:"mobileSegment", url:"https://api.it120.cc/common/mobile-segment/location", returnType:"json" } 上面配置后,您就可以直接在 html 静态页面上这样写: ${mobileSegment("mobile=13500000000").data.province} 即可在页面上显示 “广东” ,除了 province ,您可以获取接口返回的任意数据哦 ~ ------------------------------------------------ -----------------关于接口------------------------ ------------------------------------------------ 目前有很多网站偶读提供了接口服务,比如 juhe.cn apistore.baidu.com market.aliyun.com/data 您无需担心接口的稳定性和速度等问题 (您自己搭建的数据库能比他们稳定、安全么?) 脱离了数据库还有一个棒棒的原因: 您可以随时更换你的网站服务器,而不要关心数据迁移问题,因为数据本身就是保存在 阿里云、百度、聚合数据 上的 同时,聪明的您或许发现了 : 可以同时部署在多台服务器上,配置一样的接口即可,不就轻松实现分布式集群部署了么 ?~ ------------------------------------------------ -----------------开源项目------------------------ ------------------------------------------------ 本项目是一个开源项目,所以您完全可以免费使用,同时也希望您加入到这个项目的贡献中来,为开源出一份微博之力吧 :~ 开源项目地址: https://github.com/gooking/yijava-blog 有什么好的想法或者建议,欢迎在 github 上面给我留言、互动 ~
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值