java中啥是EJB?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java中啥是EJB?相关的知识,希望对你有一定的参考价值。

EJB
(Enterprise
JavaBean)是J2EE的一部分,定义了一个用于开发基于组件的企业多重应用程序的标准。其特点包括网络服务支持和核心开发工具(SDK)。
  在J2EE里,Enterprise
Java
Beans(EJB)称为Java
企业Bean,是Java的核心代码,分别是会话Bean(Session
Bean),实体Bean(Entity
Bean)和消息驱动Bean(MessageDriven
Bean)。
  1.Session
Bean用于实现业务逻辑,它可以是有状态的,也可以是无状态的。每当客户端请求时,容器就会选择一个Session
Bean来为客户端服务。Session
Bean可以直接访问数据库,但更多时候,它会通过Entity
Bean实现数据访问。
  2.Entity
Bean是域模型对象,用于实现O/R映射,负责将数据库中的表记录映射为内存中的Entity对象,事实上,创建一个Entity
Bean对象相当于新建一条记录,删除一个Entity
Bean会同时从数据库中删除对应记录,修改一个Entity
Bean时,容器会自动将Entity
Bean的状态和数据库同步。
  3.MessageDriven
Bean是EJB2.0中引入的新的企业Bean,它基于JMS消息,只能接收客户端发送的JMS消息然后处理。MDB实际上是一个异步的无状态Session
Bean,客户端调用MDB后无需等待,立刻返回,MDB将异步处理客户请求。这适合于需要异步处理请求的场合,比如订单处理,这样就能避免客户端长时间的等待一个方法调用直到返回结果。
  
EJB实际上是SUN的J2EE中的一套规范,并且规定了一系列的API用来实现把EJB概念转换成EJB产品.EJB是BEANS,BEANS是什么概念,那就是得有一个容纳她,让她可劲造腾的地方,就是得有容器.
EJB必须生存在EJB容器中.这个容器可是功能强大之极!她首先要包装你BEAN,EJB的客户程序实际上从来就不和你编写的EJB直接打交道,他们之间是通过HOME/REMOTE接口来发生关系的.它负责你的BEAN的所有的吃喝拉萨睡,比如BEAN的持续化,安全性,事务管理...
参考技术A EJB是重量级服务实现,类似于spring,但是spring是轻量级的。EJB非常繁琐,一般只有非常大的项目才会使用的。EJB可以实现分布式处理,很强大。 参考技术B 1997年4月 , sun microsystem 公司宣布了一项为企业环境开发的java平台的创新成果。sun定义了一组标准的java扩展的开发接口,并将其称为Enterprise Jave Been API.这些应用程序编程接口(API)为各种各样的中件的实现提供了不依赖供应商的编程接口。Enterprise Jave Been API为Java 应用程序服务器定义了一个服务器端组件模型,以及一个不依赖供应商的编程接口。本回答被提问者采纳 参考技术C 在Java
中所谓的EJB
就是
分布式多层体系结构
在基于J2EE规范构建的企业信息系统中,将解决或满足特定业务领域商务规则的代码构建成为业务层中的Enterprise
JavaBean(EJB)组件。EJB组件可以完成从客户端应用程序中接收数据、按照商务规则对数据进行处理、将处理结果发送到企业信息系统层进行存储、从存储系统中检索数据以及将数据发送回客户端等功能。
  部署和运行在业务层中的EJB组件依赖于EJB容器来管理诸如事务、生命期、状态转换、多线程及资源存储等。这样,由业务层和WEB层构成了多层分布式应用体系中的中间层。
参考技术D 企业级的JavaBean
是J2EE的一部分
主要是第三方的一些用于企业应用的类
EJB是功能强大,内容繁多的类集合
如果你是初学者先从JSP开始学,等学好了之后再来看

在Java中啥是<>符号[重复]

【中文标题】在Java中啥是<>符号[重复]【英文标题】:In Java What is the < > notation [duplicate]在Java中什么是<>符号[重复] 【发布时间】:2013-01-18 14:13:38 【问题描述】:

可能重复:What does Map<?, ?> mean in Java?Java Generics - What is this syntax for?

例如,我想知道 &lt; &gt; 在 Java 中的作用是什么。

public static class Map extends MapReduceBase 
    implements Mapper<LongWritable, Text, Text, IntWritable>

我不是任何方面的 Java 专家。对于使用&lt; &gt; 符号背后的原因,我希望您能提供一些明确的答案。

【问题讨论】:

你可能想读一下 -> docs.oracle.com/javase/tutorial/java/generics 看:docs.oracle.com/javase/tutorial/java/generics/types.html 用什么指令来证明对这类新手问题投了这么多票是合理的? @downvoters:这不是一个特别容易搜索的东西......当然,任何中级 Java 教程都会涵盖它,但仍然看起来相当苛刻...... @EricLeschinski 投反对票,因为一个使用 Hadoop 接口的人不知道泛型......不是 hello world 程序...... 【参考方案1】:

它表示泛型。 Mapper 是一个泛型,您从 Mapper&lt;LongWritable, Text, Text, IntWritable&gt; 继承,这是专门针对这些类型的泛型。

就像Vector - 也是通用的 - 你可以有Vector&lt;Object&gt;Vector&lt;SomeOtherClass&gt;

【讨论】:

以上是关于java中啥是EJB?的主要内容,如果未能解决你的问题,请参考以下文章

Java中啥是可调用的?

Java 中啥是快速、等待通知或忙等待?

Java中啥是正则表达式

Java开发中啥是垃圾回收?

java中啥是转义字符,为啥要使用转义

在JAVA中啥是顶级类啊