什么是EJB?它是干什么的?和JAVA,JSP有关系吗?他们各有什么特点和用途?
发布网友
发布时间:2022-04-15 08:00
我来回答
共2个回答
热心网友
时间:2022-04-15 09:29
EJB,即Enterprise JavaBeans,是SUN推出的运行在容器中的服务器端组件,用于实现业务逻辑。EJB组件类似JavaBean组件,开发人员仍以单线程模型编写EJB,不必了解低层次的事务和状态管理的细节、多线程、资源共享和其他复杂的低级API,这些功能都将由EJB容器实现,大大简化了分布式对象的开发、部署和访问。并且,EJB应用程序也遵循Java语言的“一次编写,随处运行”的原则。EJB组件可以只开发一次,然后在多个平台上部署。
EJB的体系结构
--------------------------------------------------------------------------------
目前,EJB最新的标准是2.1,EJB3.0规范正在讨论中,预计将于明年推出。EJB2.1定义了三种企业Bean,分别是会话Bean(Session Bean),实体Bean(Entity Bean)和消息驱动Bean(MessageDriven Bean)。
Session Bean用于实现业务逻辑,它可以是有状态的,也可以是无状态的。每当客户端请求时,容器就会选择一个Session Bean来为客户端服务。Session Bean可以直接访问数据库,但更多时候,它会通过Entity Bean实现数据访问。
Entity Bean是域模型对象,用于实现O/R映射,负责将数据库中的表记录映射为内存中的Entity对象,事实上,创建一个Entity Bean对象相当于新建一条记录,删除一个Entity Bean会同时从数据库中删除对应记录,修改一个Entity Bean时,容器会自动将Entity Bean的状态和数据库同步。
MessageDriven Bean是EJB2.0中引入的新的企业Bean,它基于JMS消息,只能接收客户端发送的JMS消息然后处理。MDB实际上是一个异步的无状态Session Bean,客户端调用MDB后无需等待,立刻返回,MDB将异步处理客户请求。这适合于需要异步处理请求的场合,比如订单处理,这样就能避免客户端长时间的等待一个方法调用直到返回结果。
调用一个EJB组件要比调用一个JavaBean麻烦些,由于EJB组件可以分布在多台服务器上,因此必须首先获得远程或本地Home接口,然后使用Home接口创建EJB之后就可以调用EJB的方法了。
EJB教程
--------------------------------------------------------------------------------
在开始学习EJB之前,您需要安装至少支持EJB2.0的J2EE服务器,可以考虑SUN J2EE SDK 1.3,BEA WebLogic Server 8.1,IBM WebSphere 5.0,JBoss 3.2等。
Enterprise JavaBean基础和Enterprise JavaBeans Tutorial是不错的入门教程,您还可以参考文章“什么是Enterprise JavaBeans组件(1 2 3)”来了解更多关于EJB的内容。
对于如何使用Entity Bean实现O/R映射,我们推荐下面的系列教程:
Introction to CMP and CMR, Part 1 (中文)
Introction to CMP and CMR, Part 2 (中文)
Introction to CMP and CMR, Part 3 (中文)
Introction to CMP and CMR, Part 4 (中文)
如果您对市场上一些领先的商业产品感兴趣,我们还提供专门针对BEA WebLogic和IBM WebSphere的教程。
学会了java不一定会jsp
学完java可以学jsp
ajax是一个现今比较流行的框架,是实现页面无刷新技术的解决方案,和语言没有关系
javascript是脚本语言,不是java的任何版本,不是一种语言更谈不上取代
热心网友
时间:2022-04-15 10:47
EJB实际上是SUN的J2EE中的一套规范,并且规定了一系列的API用来实现把EJB概念转换成EJB产品.EJB是BEANS,BEANS是什么概念,那就是得有一个容纳她,让她可劲造腾的地方,就是得有容器.EJB必须生存在EJB容器中.这个容器可是功能强大之极!她首先要包装你BEAN,EJB的客户程序实际上从来就不和你编写的EJB直接打交道,他们之间是通过HOME/REMOTE接口来发生关系的.它负责你的BEAN的所有的吃喝拉萨睡,比如BEAN的持续化,安全性,事务管理...
参考资料:http://www.itise.com/phrase/200604241156485.html