zoukankan      html  css  js  c++  java
  • SSH和EJB的区别

    1.定义

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

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

    2.概念

    EJB最初的设计思想考虑的是为分布式的应用服务的,分布式是针对大型应用构造的跨平台的协作计算,EJB最初的目的就是为这种计算服务的。但是软件发展到目前为止,大多数应用不需要采用分布式的解决方案,因此用EJB显得太臃肿了。Spring的出现恰恰为了解决这个问题。举个例子来说,EJB就是导弹,专门设计为打高空飞机。但是现在发现飞机不多。于是将它用来对付步兵,这个实在太糟糕了。这个时候有人发明了狙击步枪(Spring),发现对付步兵太好用了。

    这两个框架有着一个共同的核心设计理念:它们的目标是为松耦合的POJO类提供中间件服务。框架通过在运行时截取执行环境,或将服务对象注射给POJO类的方式,将应用服务和POJO类“连接”起来。POJO类本身并不关注如何“连接”,而且也很少依赖于框架。

    3.区别联系

    3.1区别:

    1. EJB来源于官方,一经通过,即成为了标准,Spring来源于开源社区,是由广大开发者共同参与开发的
    2. EJB是重量级的,而Spring是轻量级的,倡导零侵入性。
    3. 分布式能力。EJB主要被用来做分布式开发,但是Spring不具备分布式能力。

    3.2联系:

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

    参考:https://zhidao.baidu.com/question/137154342.html

  • 相关阅读:
    计时器C#
    MySQL Database Command Line Client
    C#小爬虫,通过URL进行模拟发送接收数据
    C#导入导出Excele数据
    正则表达式动态分隔符
    C#中的枚举
    C#中的ToString格式大全
    C# 序列化与反序列化
    C# 对xml进行操作
    时间标签DateTime
  • 原文地址:https://www.cnblogs.com/liaoguanwang/p/9194161.html
Copyright © 2011-2022 走看看