重量级与轻量级的区别
来源:互联网 发布:万达复利理财网络 编辑:程序博客网 时间:2024/05/16 14:46
直接把一项技术的规范和文档拿出来秤:操过500克就是heavyweight,否则就是lightweight。
似乎heavyweight总是与复杂性联系起来的,就如同ejb container与spring。
我们所开发的系统并不是都是分布式的,也并不都是那么复杂的,才会有spring的出现。客观的说,ejb container能够提供的功能,spring基本上都能够以javabean的方式实现。
区别在于ejb container是一个构件的容器;而spring是一个对象的容器,一个转移对象间的耦合,把业务逻辑与安全、事务等相分离的轻量级解决方案。
Spring 最核心的部件就是它的Bean Container,在整个框架中扮演了一个软总线,它使框架内部的组件按照一定的耦合度组装起来,对外提供一个服务的接口。
如果开发一个需要跟多个系统交互运行的分布式系统还是使用ejb吧, spring取代不了ejb。
但是对于大多数web应用,应该是一个不需要访问其他系统的多层系统(即使可能访问多个数据库),采用spring把。Spring+hibernate应该是一个比较好的组合,但和ejb container相比,spring的缺点就是没有规范。其实这么多年来,java总是在不停的修修补补中前进。
轻量级容器对于web 应用的意义尤为明显;但对于其他类型的应用(包括在J2EE环境中运行的应用和独立的应用)来说,轻量级容器也有助于提高它们的复用程度,例如业务对象和数据访问对象(DAO)的复用。 什么是轻量级容器? EJB可能是最好的反例:
1. 侵略性的API(你的代码依赖于EJB)
2. 对容器的依赖(你的代码不能在EJB容器之外工作)
3. 只提供固定的一组功能,不具备配置能力
4.
5. 启动时间长
6. 部署过程取决于特定的产品,无法通用 轻量级容器的目标是避免上面所有这些麻烦事情.
似乎heavyweight总是与复杂性联系起来的,就如同ejb container与spring。
我们所开发的系统并不是都是分布式的,也并不都是那么复杂的,才会有spring的出现。客观的说,ejb container能够提供的功能,spring基本上都能够以javabean的方式实现。
区别在于ejb container是一个构件的容器;而spring是一个对象的容器,一个转移对象间的耦合,把业务逻辑与安全、事务等相分离的轻量级解决方案。
Spring 最核心的部件就是它的Bean Container,在整个框架中扮演了一个软总线,它使框架内部的组件按照一定的耦合度组装起来,对外提供一个服务的接口。
如果开发一个需要跟多个系统交互运行的分布式系统还是使用ejb吧, spring取代不了ejb。
但是对于大多数web应用,应该是一个不需要访问其他系统的多层系统(即使可能访问多个数据库),采用spring把。Spring+hibernate应该是一个比较好的组合,但和ejb container相比,spring的缺点就是没有规范。其实这么多年来,java总是在不停的修修补补中前进。
轻量级容器对于web 应用的意义尤为明显;但对于其他类型的应用(包括在J2EE环境中运行的应用和独立的应用)来说,轻量级容器也有助于提高它们的复用程度,例如业务对象和数据访问对象(DAO)的复用。 什么是轻量级容器? EJB可能是最好的反例:
1. 侵略性的API(你的代码依赖于EJB)
2. 对容器的依赖(你的代码不能在EJB容器之外工作)
3. 只提供固定的一组功能,不具备配置能力
4.
5. 启动时间长
6. 部署过程取决于特定的产品,无法通用 轻量级容器的目标是避免上面所有这些麻烦事情.
- 重量级与轻量级的区别
- 轻量级框架与重量级框架的区别
- 轻量级组件与重量级组件的区别
- 轻量级框架与重量级框架的区别
- 关于轻量级与重量级的区别。
- 轻量级与重量级的论述
- java 轻量级组件与重量级组件的区别
- java组件之重量级与轻量级区别
- java组件之重量级与轻量级区别
- 轻量级组件和重量级组件的区别
- 轻量级和重量级框架的区别
- java中重量级和轻量级的区别
- 轻量级与重量级框架的划分
- 轻量级与重量级特点
- 轻量级与重量级特点
- java重量级与轻量级
- “轻量级”与“重量级”
- 偏向锁,轻量级锁与重量级锁的区别与膨胀
- 我強烈要求中央保住斯诺登
- 学习笔记(7)--对“一道基本的汇编语言题目”的改进
- (转)Portal实现原理
- 大型网站架构演变和知识体系
- 【转】经验分享:大型高并发高负载网站的系统架构
- 重量级与轻量级的区别
- 命令启动ORACLE9I的两个服务启动与关闭节约内存
- JSTL
- 简洁自定义框架的开发步骤
- sybase ase:windows 无法启动sysam服务
- 向IBM进军
- 有效创建oracle dblink 的两种方式
- sql like 优化
- Sybase IQ从远程数据库插入到本地数据库