转自:https://zhidao.baidu.com/question/137154342.html

  • SSH(Struts,Spring,Hibernate) Struts进行流程控制,Spring进行业务流转,Hibernate进行数据库操作的封装。

  • EJB(企业级JavaBean)是一个用来构筑企业级应用的服务器端可被管理组件, 设计目标与核心应用是部署分布式应用程序。

  • spring与ejb
    • EJB最初的设计思想考虑的是为分布式的应用服务的,分布式是针对大型应用构造的跨平台的协作计算,EJB最初的目的就是为这种计算服务的。但是软件发展到目前为止,大多数应用不需要采用分布式的解决方案,因此用EJB显得太臃肿了。Spring的出现恰恰为了解决这个问题。举个例子来说,EJB就是导弹,专门设计为打高空飞机。但是现在发现飞机不多。于是将它用来对付步兵,这个实在太糟糕了。这个时候有人发明了狙击步枪(Spring),发现对付步兵太好用了。
    • 这两个框架有着一个共同的核心设计理念:它们的目标是为松耦合的POJO类提供中间件服务。框架通过在运行时截取执行环境,或将服务对象注射给POJO类的方式,将应用服务和POJO类“连接”起来。POJO类本身并不关注如何“连接”,而且也很少依赖于框架。
  • 区别:
    1、EJB来源于官方,一经通过,即成为了标准,Spring来源于开源社区,是由广大开发者共同参与开发的
    2、EJB是重量级的,而Spring是轻量级的,倡导零侵入性。
    3、分布式能力。EJB主要被用来做分布式开发,但是Spring不具备分布式能力。

  • 联系:
    二者都是容器类框架。

  1. 运行效率方面,单论JAVA系列,不用任何框架运行效率最高,但这是不可能的,不然光那些细节就晕掉你,SSH很成熟,若还要追求一点效率,把spring去掉,再追求,把hibernate也去掉,JAVA+struts+JDBC也是相当成熟的一种用法,比SSH效率要高。
  2. dao.java只是项目框架MVC的一个部分,只要你用MVC框架,这部分就不可能去掉,无非就是dao.java选择JDBC还是hibernate的问题,JDBC和hibernate的优劣网上很多,这里不多说了,自己取舍。
  3. ejb的路应该来说是越走越窄了,SSH完全可以替代,spring就是为替代EJB设计的轻量级框架,至于你后面说的
    “专门设置一个登陆服务器,然后分流到各个web服务器上,再由web服务器转到数据库服务器上,每台机器都用ssh架构”已经超越项目本身了,已经是服务器架构的问题了,但可以肯定,SSH够用。
    “把数据库服务器和web服务器分开”只要你把数据库IP地址填写正确,就可以了

ssh和ejb的区别的更多相关文章

  1. JAVABEAN EJB POJO区别

    1.POJO POJO(Plain Old Java Object)这种叫法是Martin Fowler.Rebecca Parsons和Josh MacKenzie在2000年的一次演讲的时候提出来 ...

  2. JavaBean 与 EJB 的区别

    JavaBean在一般情况下指的是实体类,在大部分情况下和POJO是同义词,基本构成就是一些字段和与之对应的 setter.getter方法,如果一个JavaBean需要在不同的JVM的进程中进行传递 ...

  3. 各种概念POJO、JAVABEAN、DAO、DTO、PO、VO、BO、SSH、EJB

    转自:https://my.oschina.net/pacoyang/blog/151695 POJO(pure old java object)是普通java类,有一些private的参数作为对象的 ...

  4. JavaBean与EJB的区别与应用

    JavaBean 是一种组件,它在内部有接口或有与其相关的属性,以便不同人在不同时间开发的 bean 可以询问和集成. EJB 是部署在服务器上的可执行组件或商业对象.有一个协议允许对其进行远程访问或 ...

  5. ssh跟ssm的区别

    SSH跟SSM的区别 SSH指的是:spring+Struts+hibernate:而SSM指的是:spring +SpringMVC + MyBatis. 1.Spring是是开源框架,是轻量级的I ...

  6. SSH与EJB 比较

    SSH完全的开源产品,如果用SSH就必然会用到大量的开源的东东,从数据库到逻辑到控制到前端,开源产品大拼装, 其中SSH中的三大核心,Struts相当于JSF,spring相当于EJB,hiberna ...

  7. ssh 与 Telnet 的区别

    简单来书,ssh 和 telnet 是实现相同的功能 , ssh中 数据是经过加密的,是安全的 , 而 Telnet是明文传输的ssh 是加密的,基于 SSL .telnet 是明码传输的,发送的数据 ...

  8. Webservice和EJB的区别

    1. WebService可以说是跨平台的,因为它采用的是XML技术,说穿了就是把你的请求按照该WebServece的标准将参数传过去,然后服务器返回结果,当然了最重要的是参数的传递和结果的返回都是采 ...

  9. SSH和SSM的区别

    一怒成仙 博客园 首页 新随笔 联系 管理 订阅 随笔- 54  文章- 1  评论- 0    SSH(Struts,Spring,Hibernate)和SSM(SpringMVC,Spring,M ...

随机推荐

  1. 转:Java工程师成神之路~(2018修订版)

    转: http://www.hollischuang.com/archives/489 阿里大牛珍藏架构资料,点击链接免费获取 针对本文,博主最近在写<成神之路系列文章> ,分章分节介绍所 ...

  2. Spring整合Hystrix

    1.添加maven依赖 <dependency> <groupId>com.netflix.hystrix</groupId> <artifactId> ...

  3. koa学习

    http://www.ruanyifeng.com/blog/2017/08/koa.html

  4. nginx+vue刷新404

    问题原因:刷新页面时访问的资源在服务端找不到,因为vue-router设置的路径不是真实存在的路径.如上的404现象,是因为在nginx配置的根目录/Data/app/xqsj_wx/dist下面压根 ...

  5. MyBatis逆向工程:根据table生成Model、Mapper、Mapper.xml

    逆向工程工具 下载地址:https://download.csdn.net/download/zhutouaizhuwxd/10779140 1.工程导入Eclipse  2.运行MainUI.jav ...

  6. js onclick函数中传字符串参数的问题

    规则: 外变是“”,里面就是‘’外边是‘’,里边就是“”   示例: var a="111"; var html="<a onclick='selecthoods( ...

  7. vue-router-1-安装与基本使用

    npm install vue-router import Vue from 'vue' import VueRouter from 'vue-router' Vue.use(VueRouter) / ...

  8. linux文件查看

    查看目录 #查看文件 使用  ls  命令,加上参数 -l 表示查看详细信息,-a 表示查看包含隐藏文件在内的文件.也可使用通配符,*代表任意个字符,? 表示单个字符. $ ls ch*.doc #表 ...

  9. oracel 日期查询

    --查出当前系统时间select SYSDATE from table; --格式转换--  TO_CHAR  把日期或数字转换为字符串 --  TO_CHAR(number, '格式')     - ...

  10. MyEclipse创建Web项目入门指南

    MyEclipse 在线订购年终抄底促销!火爆开抢>> MyEclipse最新版下载 本教程将指导您创建和部署简单的Hello World Web项目.在本教程中,您将学习如何: 创建一个 ...