打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
JAVA轻量级组件和重量级组件的本质区别

组件:一般都是已编译好的类,对外只提供接口。

容器:为某些组件的运行提供必要运行支持的一个软件环境。如Web容器为Servlet和JSP组件提供运行环境,EJB容器为EJB组件提供运行环境。而一般来说这些组件无法脱离这些容器单独运行。

除提供组件运行环境之外,容器还提供了访问系统底层服务的简单方法。如EJB容器为EJB组件提供了声明式事务服务,使开发人员不必去管事务

量级主要是看容器的依赖性所决定的,依赖性越小,越轻量

在Java 应用程序开发环境中,“轻量级Java”主要是指两个东西:简化的编程模型和更具响应能力的容器。轻量级Java 旨在消除与传统 J2EE API 有关的不必要的复杂性和限制。它也将缩短应用程序的部署时间,这对于支持开发最佳实践(比如频繁单元测试)非常重要。 
eg:

struts spring hibernate 是轻量级框架


Spring:一个轻量级的容器,任何Java Bean,JNDI对象和所有能被实例化的Java对象都可以成为组件,让Spring容器管理 

EJB是重量级框架


轻量级组件是用JAVA代码画出来的,这样具有平台移植性。   重量级组件是调用操作系统的函数画出来的组件,比如主窗体。   一般来说尽量用轻量级的组件,这样对程序的移植性很好,一般javax.swing包里的组件大部分是轻量级的java.awt里面的是重量级的。   Swing是由100%纯Java实现的,Swing组件是用Java实现的轻量级( light-weight)组件,没有本地代码,不依赖操作系统的支持,    这是它与AWT组件的最大区别。由于AWT组件通过与具体平台相关的对等类(Peer)实现,因此Swing比AWT组件具有更强的实用性。    Swing在不同的平台上表现一致,并且有能力提供本地窗口系统不支持的其它特性。


轻量级容器对于web 应用的意义尤为明显;但对于其他类型的应用(包括在J2EE环境中运行的应用和独立的应用)来说,轻量级容器也有助于提高它们的复用程度,例如业务对象和数据访问对象(DAO)的复用。 什么是轻量级容器? EJB可能是最好的反例: 
1. 侵略性的API(你的代码依赖于EJB) 
2. 对容器的依赖(你的代码不能在EJB容器之外工作) 
3. 只提供固定的一组功能,不具备配置能力 
4. 启动时间长 
5. 部署过程取决于特定的产品,无法通用 轻量级容器的目标是避免上面所有这些麻烦事

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Java企业应用系统框架的比较与选择
JAVA程序设计 第八课
JAVA Painting-Swing实现纪要一 - - JavaEye技术网站
(总结)Java图形界面编程知识点汇总(待补充)
AWT与SWING
【引用】Java swing 组件分层介绍:JRootPane,GlassPane,LayeredPane,和ContentPane
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服