有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!


共 (5) 个答案

  1. # 1 楼答案

    JavaBean只是一组约定。EJB是J2EE业务组件的标准

    特别是Java bean:

    • 具有公共默认构造函数
    • 可读属性方法在“get”之前
    • 可写属性方法在“set”之前;及
    • 是可序列化的

    例如,属性为“margin”的Java bean的外观至少如下所示:

    public class MyBean implements Serializable {
      private int margin;
    
      public MyBean() { }
      public int getMargin() { return margin; }
      public void setMargin(int margin) { this.margin = margin; }
    }
    

    EJB,不管名称如何,几乎是完全无关的

  2. # 2 楼答案

    1. JavaBeans在运行时可能可见或不可见。对于 例如,可视GUI组件可能是按钮、列表 方框、图形或图表

      EJB是一个非可视的远程对象

    2. JavaBeans旨在成为单个进程的本地对象 并且主要是为了在客户端运行。虽然 可以开发服务器端JavaBeans,这要容易得多 而是使用EJB规范开发它们

      EJB是远程可执行的组件或业务 只能在服务器上部署的对象

    3. JavaBeans是一种用于创建泛型的组件技术 可以组合成小程序的Java组件 和应用程序

      即使EJB是一种组件技术,它也不是 基于或扩展原始JavaBean规范

    4. JavaBeans有一个称为属性的外部接口 接口,它允许生成器工具解释 bean的功能

      EJB有一个描述其特性的部署描述符 外部生成器工具或IDE的功能

    5. JavaBeans可能有BeanInfo类、属性编辑器或 定制者

      EJB没有BeanInfo类、属性的概念 编辑器或自定义程序,不提供其他信息 而不是部署描述符中描述的

    6. JavaBean不是类型化的

      EJB有两种类型——会话bean和实体bean

    7. JavaBeans中不存在对事务的显式支持

      EJB可能是事务性的,EJB服务器提供 事务支持

    8. 组件桥可用于JavaBeans。例如,一个 JavaBean也可以部署为Activex控件

      EJB不能作为ActiveX控件部署,因为 ActiveX控件旨在在桌面和计算机上运行 EJB是服务器端组件。然而CORBA-IIOP 通过EJB到CORBA映射的兼容性由 天哪

  3. # 3 楼答案

    我发现从接受的答案中理解有点麻烦,所以谷歌搜索了更多的链接,得到了下面的答案

    Enterprise JavaBeans (EJB)3.1这些是J2EE规范,它指示服务器(应用服务器)在EJB容器中部署一段代码

    EJB technology is the server-side component architecture for the development and deployment of component-based business applications. EJB technology enables rapid and simplified development of distributed, transactional, secure, and portable applications based on Java EE 6 technology.

    用简单的语言: 如果创建EJB并将其部署在服务器上,则可以远程调用它(使用某种技术,即使用RMI进行JNDI查找),或者本地调用它(即在应用程序中使用)

    另一方面,Java beans是一个简单的普通Java类,带有getter和setter,该类是序列化的,下面是示例:

    public class MyBean implements java.io.Serializable
    {
       protected  int theValue;
    
       public MyBean()
       {
       }
    
       public void setMyValue(int newValue)
       {
          theValue = newValue;
       }
    
       public int getMyValue()
       {
          return theValue;
       }
    }
    

    因此,这意味着EJB和JavaBean之间没有可比性,两者都是完全不同的概念

  4. # 5 楼答案

    看看这篇文章——{a1}

    SUMMARY:

    JB

    JavaBeans takes a low-level approach to developing reusable software components that can be used for building different types of Java applications (applets, stand-alone apps, etc.) in any area.

    EJB

    Enterprise JavaBeans takes a high-level approach to building distributed systems. It frees the application developer to concentrate on programming only the business logic while removing the need to write all the "plumbing" code that's required in any enterprise application.