EJB(使JavaBean拥有企业级JavaBean功能的框架):
Enterprise JavaBean,相较于一般JavaBean自然是有很多安全高效的附加功能,比如事务管理、安全、持久化、分布式等等,
因此,开发者只需要快速将JavaBean构建出来就行,让JavaBean变成EJB的任务就交给了WebServer(即 WebServer 内置的 EJB 容器/框架),市场上拥有EJB容器的服务器是收费的,比如Oracle的weblogic,IBM的websphere,这类服务器(不仅提高了servelt容器还提供了EJB容器),而中小型企业只能选择开源免费的tomcat容器(仅有servlet容器,没有EJB容器)
Spring:
Spring就是为了弥补tomcat的不足而诞生的,Spring+mybatis/hibernate提供了让JavaBean拥有EJB的功能,而且更加细致、完善,如此一来小企业也可以做到事半功倍!
优点:轻量级,适合小型业务系统的开发,代码移植性强,只要服務器支持色弱vlet
二者区别:
- EJB
- 重量级框架
- 代码移植性差
- Spring
- 轻量级框架
- 移植性强,Spring在Servlet引擎中执行,所以适用所有Java WebServer
总结:
Spring是为了弥补EJB的应用缺陷而诞生,但是Spring并不支持分布式,而EJB容器是支持分布式的,大型的企业级开发有很多系统要相互调用,为JavaBean提供分布式功能可以大量减少代码冗余,提高复用,两种技术的业务场景还是不同的