SSH与EJB 比较
SSH完全的开源产品,如果用SSH就必然会用到大量的开源的东东,从数据库到逻辑到控制到前端,开源产品大拼装,
其中SSH中的三大核心,Struts相当于JSF,spring相当于EJB,hibernate相当于JPA,
具体反映到IDE对于两种框架的支持上,本人用的是netbeans,对经典的JAVAEE支持的非常好,所有的配置文件都集成到了IDE中,甚至还包括了一个中文免费的EJB容器:Glassfish,反观SSH,虽然也有大力支持,但是配置起来相对繁琐,不过也还好,总之,SSH和经典JAVAEE之间确实是相互补充,共同进步的关系。
SSH优点:运行速度快,开发调试一点就来
缺点:配置显复杂了些,拼装起来有种大杂烩的感觉
经典JAVAEE优点:集成度高,整体感强
缺点:EJB容器相对对电脑要求高些,开发调试速度慢
SSH是标准的 面向对象框架。这里的标准有两层含义,一指它是一个非常合格的面向对象框架,一指它近乎业界的标准。一个 一直被认为与它有点冲突的真正的标准是EJB。
EJB更像一个企业级应用API。它的目标是在应用程序服务器与企业应用之间建立一个通信层。也就是说它在服务器与应用之间插入了一个协议。两者之间则通过协议进行通信。通过协议进行通信的好处不言而喻,它为两者的独立发展提供了一个非常牢固的基础。
这个基础的来源便在于抽象化:EJB通过将应用需求进行高度,标准化的抽象,重新定义了几乎所有(至少它在尝试)的应用程序服务。因为只有在这些服务得到成功的抽象以后,服务器开发者才能得到它真正的自由,应用程序开发者也才能得到它的。在这个意义上,SSH与之相比,实在是九牛一毛,不值得比。
虽然现在的SPRING现在庞大无比,但是一开始的SSH其实是一个最简单的OO框架:它只是简单地处理了一下分别处于两头的持久层与表现层并在中间层上提供了一个简单的对象创建器(IOC)。我把这个一开始的SSH当成我们现在讨论的对象。因为即使SPRING提供再多的东西,也无法改变SSH作为一个整体在系统开发中的地位:一个面向对象的支撑器。
等等,一个面向对象的支撑器?
看到这里,还会有人想把它与EJB相比吗?(当然,如果把现在的SPRING整个服务体系也搬进来的话,一定要比还是有办法的)。因为对象与服务显然是两个完全不同的概念。对象只是服务的一种。EJB的假设是对象这种东西应该是由应用程序开发者自己去处理的,平台不应该处理这样的问题。因为它属于用户程序领域(这是SPRING之所以能向J2EE斜插一刀的原因)。另一方面,对象服务本来就比较贴“身”,平台的确不太便于处理这样的服务?
SSH与EJB 比较的更多相关文章
- 各种概念POJO、JAVABEAN、DAO、DTO、PO、VO、BO、SSH、EJB
转自:https://my.oschina.net/pacoyang/blog/151695 POJO(pure old java object)是普通java类,有一些private的参数作为对象的 ...
- ssh和ejb的区别
转自:https://zhidao.baidu.com/question/137154342.html SSH(Struts,Spring,Hibernate) Struts进行流程控制,Spring ...
- JAVABEAN EJB POJO区别
1.POJO POJO(Plain Old Java Object)这种叫法是Martin Fowler.Rebecca Parsons和Josh MacKenzie在2000年的一次演讲的时候提出来 ...
- JavaBean 与 EJB 的区别
JavaBean在一般情况下指的是实体类,在大部分情况下和POJO是同义词,基本构成就是一些字段和与之对应的 setter.getter方法,如果一个JavaBean需要在不同的JVM的进程中进行传递 ...
- 对EJB的认识
对EJB的认识 接触EJB以来有一段时间了,走马观花一样把它所涉及到的东西看了一遍,随着深入了解越来越感觉到ejb的很强大,用了java后觉的java好用.学历SSH觉的比java好用.学了ejb觉的 ...
- Java系列之EJB 理解
EJB = Enterprise Java Bean,它和JavaBean有本质的区别,最好不要将他们混淆起来,就像不要将Java和 Javascript混淆起来一样.EJB有3中类型:Session ...
- 【转】JAVA自学之路
JAVA自学之路 一: 学会选择 为了就业,不少同学参加各种各样的培训. 决心做软件的,大多数人选的是java,或是.net,也有一些选择了手机.嵌入式.游戏.3G.测试等. 那么究竟应该选择什么方向 ...
- Struts 2 Learning
目录 . J2EE简介 . JAVA EE应用的分层模型 . 搭建Struts2 Demo应用 . struts2流程 . struts2的常规配置 . 实现Action . 配置Action . 配 ...
- 我们如何学好java
转载:http://www.zhihu.com/question/19945685 马士兵有一篇文章,我觉得写得很好,原文转载如下,希望题主可以好好读读. ---------------------- ...
随机推荐
- 9种CSS3炫酷图片展开预览展示动画特效
详细内容请点击 在线预览立即下载 这是一组共9款CSS3炫酷图片预览展示动画特效插件.css的新特性可以让我们制作出各种炫酷的动画效果.该图片预览展示动画特效就是一个很好的例子,该效果开始时图片堆叠在 ...
- 解决方案:Default Activity Not Found !
在Android Studio 中按 Ctrl+F11运行工程的时候,突然弹出一个Edit Configuration 对话框,让选择一个默认的Activity,之前默认情况下是直接编译到虚拟机运行的 ...
- 实例介绍Cocos2d-x开关菜单
开关菜单是MenuItemToggle类实现的,它是一种可以进行两种状态切换的菜单.它可以通过下面的函数创建: static MenuItemToggle*createWithCallback ( ...
- 使用pch预编译文件
首先新建一个pch文件,然后要修改这个项目的Build Setting中的Prefix Header 修改为 $(SRCROOT)/项目名称/预编译文件名: 一般pch文件的用处: 1.导入框架, ...
- TouchAndGuest触摸事件和手势
//// nextViewController.m#import "nextViewController.h"#import "my.h"@interface ...
- C#.NET实现Word或Excel文件转为HTML文件
Word文件转html,返回相对路径 private string GetPathByDocToHTML(string strFile) { if (string.IsNullOrEmpty(strF ...
- 理解JavaScript设计模式与开发应用中发布-订阅模式的最终版代码
最近拜读了曾探所著的<JavaScript设计模式与开发应用>一书,在读到发布-订阅模式一章时,作者不仅给出了基本模式的通用版本的发布-订阅模式的代码,最后还做出了扩展,给该模式增加了离线 ...
- ubuntu 常用参数设置
在Linux下,对于参数的设置,一般来说,都遵循这个规律.每一个功能程序,一定对于一个对于名字的配置文件. 涉及到多用户的功能配置,一定有一个全局的配置文件,对所有用户都生效,而每个用 ...
- 【转】asp.net mvc3 简单缓存实现sql依赖
asp.net mvc3 简单缓存实现sql依赖 议题 随 着网站的发展,大量用户访问流行内容和动态内容,这两个方面的因素会增加平均的载入时间,给Web服务器和数据库服务器造成大量的请求压力.而大 ...
- 【风马一族_Java】java的一种IDE
IntelliJ IDEA 14 下载地址: IntelliJ IDEA 14 下载 分享几个license: (1) key:IDEA value:61156-YRN2M-5MNCN-NZ8D2-7 ...